[patch] fix for the `access beyond end of device' bug of 2.3.[789]

Andrea Arcangeli (andrea@suse.de)
Fri, 25 Jun 1999 01:34:58 +0200 (CEST)


I finally spotted and fixed the silly bug. Here it is the fix against 2.3.8:

Index: linux/fs/ext2/inode.c
===================================================================
RCS file: /var/cvs/linux/fs/ext2/inode.c,v
retrieving revision 1.1.1.11
diff -u -r1.1.1.11 inode.c
--- linux/fs/ext2/inode.c 1999/06/21 12:35:35 1.1.1.11
+++ linux/fs/ext2/inode.c 1999/06/24 23:24:03
@@ -174,6 +174,7 @@
ret = block_bmap (bread (inode->i_dev, i,
inode->i_sb->s_blocksize),
block & (addr_per_block - 1));
+ goto out;
}
block -= (1 << (addr_per_block_bits * 2));
i = inode_bmap (inode, EXT2_TIND_BLOCK);

BTW, I also fixed all my local-VM (not related to the real 2.3.8) bugs so
now my 2.3.8-tree "seem" rock solid (no problem with _heavy_ swap+I/O in
progress).

Now I hope you'll agree to soon merge my pagemap-lru code into the kernel :)).

Andrea Arcangeli

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/