Date: Sat, 18 Nov 2000 17:28:49 -0800 (PST) From: Matt Dillon <dillon@FreeBSD.org> To: cvs-committers@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/kern vfs_bio.c Message-ID: <200011190128.RAA59781@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
dillon 2000/11/18 17:28:49 PST
Modified files: (Branch: RELENG_4)
sys/kern vfs_bio.c
Log:
MFC VFS/BIO portion from 1.267. VM/low-mem fixes will be MFC'd later:
KASSERT if the original buffer for a background write was replaced,
indicating a probable duplicate I/O or passing I/O resulting in
filesystem corruption. There are still probable bugs in the I/O
handling and this will catch them rather then allow the FS to become
corrupted.
Remove the BX_BKGRDINPROG test in brelse() that was not working anyway,
to restore prior NFS functionality (which we also believe does not work
anyway, but this is safest until we figure out how to fix that whole
section).
Fixed bogus_page handling in brelse which could lead to invalidation
of the wrong page and thus filesystem corruption.
Fixed foff calculation in biodone(). I/O's with errors or I/O's
brelse()'d rather then initiated could lead to an attempt to reprocess
the same b_pages[] element twice, resulting in a 'busy < 0' panic.
Approved: jkh
Reviewed-by: mckusick, Ian Dowse <iedowse@maths.tcd.ie>
Submitted-by: dillon, mckusick, Ian Dowse <iedowse@maths.tcd.ie>
Revision Changes Path
1.242.2.3 +35 -20 src/sys/kern/vfs_bio.c
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200011190128.RAA59781>
