--- x/drivers/block/ll_rw_blk.c.~1~ 2003-10-01 06:04:01.000000000 +0200 +++ x/drivers/block/ll_rw_blk.c 2003-10-01 06:21:35.000000000 +0200 @@ -1186,7 +1186,7 @@ static inline void attempt_front_merge(r static int __make_request(request_queue_t * q, int rw, struct buffer_head * bh) { - unsigned int sector, count, sync; + unsigned int sector, count; int max_segments = MAX_SEGMENTS; struct request * req, *freereq = NULL; int rw_ahead, max_sectors, el_ret; @@ -1198,7 +1198,6 @@ static int __make_request(request_queue_ count = bh->b_size >> 9; sector = bh->b_rsector; - sync = test_and_clear_bit(BH_Sync, &bh->b_state); rw_ahead = 0; /* normal case; gets changed below for READA */ switch (rw) { @@ -1371,8 +1370,6 @@ out: blkdev_release_request(freereq); if (should_wake) get_request_wait_wakeup(q, rw); - if (sync) - __generic_unplug_device(q); spin_unlock_irq(q->queue_lock); if (atomic_add) blk_atomic_add(q); --- x/fs/buffer.c.~1~ 2003-10-01 06:04:01.000000000 +0200 +++ x/fs/buffer.c 2003-10-01 06:21:26.000000000 +0200 @@ -1199,7 +1199,6 @@ struct buffer_head * bread(kdev_t dev, i cond_resched(); return bh; } - set_bit(BH_Sync, &bh->b_state); ll_rw_block(READ, 1, &bh); wait_on_buffer(bh); if (buffer_uptodate(bh)) --- x/include/linux/fs.h.~1~ 2003-10-01 06:04:01.000000000 +0200 +++ x/include/linux/fs.h 2003-10-01 06:21:23.000000000 +0200 @@ -227,7 +227,6 @@ enum bh_state_bits { BH_Launder, /* 1 if we can throttle on this buffer */ BH_Attached, /* 1 if b_inode_buffers is linked into a list */ BH_JBD, /* 1 if it has an attached journal_head */ - BH_Sync, /* 1 if the buffer is a sync read */ BH_Delay, /* 1 if the buffer is delayed allocate */ BH_Atomic, /* 1 if b_elv_sequence is valid */