Disable background bitmap writes. They appear to cause at least two race
authorMatthew Dillon <dillon@dragonflybsd.org>
Wed, 8 Oct 2003 00:10:56 +0000 (00:10 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Wed, 8 Oct 2003 00:10:56 +0000 (00:10 +0000)
commit27c2f783473045f3d08ad5aedfea12d35ace5d5c
tree3da20190b35a56653249ebe9d009ee1a4547e75b
parentc8698de8aeafcef99853fa06d95472d44db6b2d7
Disable background bitmap writes.  They appear to cause at least two race
conditions:  First, on MP systems even an LK_NOWAIT lock may block,
invalidating flags checks done just prior to the lock attempt.  Second, on
both MP and UP systems, the original buffer (origbp) may be modified during
the completion of a background write without its lock being held and these
modifications can race against mainline code that is also modifying the same
buffer with the lock held.

Eventually the problem background bitmap writes solved will be solved more
generally by implementing page COWing durign device I/O to avoid stalls on
pages undergoing write I/O.
sys/kern/vfs_bio.c