Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-akpm/fs/buffer.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff -puN fs/buffer.c~end_buffer_write_sync-avoid-pointless-assignments fs/buffer.c
--- 25/fs/buffer.c~end_buffer_write_sync-avoid-pointless-assignments	2005-04-07 18:32:45.000000000 -0700
+++ 25-akpm/fs/buffer.c	2005-04-07 18:32:45.000000000 -0700
@@ -2838,14 +2838,14 @@ void ll_rw_block(int rw, int nr, struct 
 
 		get_bh(bh);
 		if (rw == WRITE) {
-			bh->b_end_io = end_buffer_write_sync;
 			if (test_clear_buffer_dirty(bh)) {
+				bh->b_end_io = end_buffer_write_sync;
 				submit_bh(WRITE, bh);
 				continue;
 			}
 		} else {
-			bh->b_end_io = end_buffer_read_sync;
 			if (!buffer_uptodate(bh)) {
+				bh->b_end_io = end_buffer_read_sync;
 				submit_bh(rw, bh);
 				continue;
 			}
_