diff -Nru linux-old/fs/buffer.c linux-new/fs/buffer.c
--- linux-old/fs/buffer.c	2002-10-23 22:12:52.000000000 -0400
+++ linux-new/fs/buffer.c	2002-10-23 22:16:07.000000000 -0400
@@ -1709,6 +1709,11 @@
 			flush_dcache_page(page);
 			set_bit(BH_Uptodate, &bh->b_state);
 			mark_buffer_dirty(bh);
+
+			if (block_end > inode->i_size) {
+				i_size_write(inode, block_end);
+				mark_inode_dirty(inode);
+			}
 		}
 next_bh:
 		block_start = block_end;
