git: kernel - Fix improper assertion panic in vinvalbuf()
Matthew Dillon
dillon at crater.dragonflybsd.org
Sat Dec 8 14:25:49 PST 2012
commit 678a10c07eac5ff21749f09cab559ee2d15dd9b9
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Sat Dec 8 14:22:15 2012 -0800
kernel - Fix improper assertion panic in vinvalbuf()
* Related to the removal of vhold/vdrop from buffer cache buffers, the
state of a vnode being cleaned can now contain more active buffers and
I/O's at the time of the vinvalbuf() call.
* Remove the 'vinvalbuf: dirty bufs' assertion and panic. It is no longer
a correct assertion. Note that we've also had sporatic reports of this
panic even prior to the work so it might not have been a completely
correct assertion before either.
* Rework the vinvalbuf buffer-flushing and I/O-waiting code a bit. We
have to wait for I/O at least once and it is probably a good idea to
wait for I/O after each buffer flush pass too, to avoid live-locks.
Reported-by: vsrinivas
Summary of changes:
sys/kern/vfs_subr.c | 43 ++++++++++++++++++++++++-------------------
1 files changed, 24 insertions(+), 19 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/678a10c07eac5ff21749f09cab559ee2d15dd9b9
--
DragonFly BSD source repository
More information about the Commits
mailing list