Date: Sun, 10 Dec 2000 16:30:39 -0800 (PST) From: Matt Dillon <dillon@earth.backplane.com> To: Philipp Mergenthaler <un1i@rz.uni-karlsruhe.de> Cc: current@freebsd.org Subject: Re: fix for pageout_flush panic (was Re: panic: vm_pageout_flush: partially dirty page) Message-ID: <200012110030.eBB0UdI88063@earth.backplane.com> References: <20001210033546.A13896@rz.uni-karlsruhe.de> <200012102334.eBANYWm87853@earth.backplane.com> <20001211011119.B21036@rz.uni-karlsruhe.de>
next in thread | previous in thread | raw e-mail | index | archive | help
I found a second issue... just a normal write-via-mmap issue, which I think INN does. If you mmap() a file fragment and write to it via the mmap(), m->dirty is set to VM_PAGE_BITS_ALL (0xFF). the normal buffer flush will only clear the dirty bits on the page associated with the file fragment, leaving m->dirty 0xFC without an associated buffer. I think *this* is causing the panic. Unfortunately, fixing it properly is a bit delicate because there are cases where it is not appropriate for the buffer cache code to just go and clear m->dirty (e.g. for odd buffer block sizes such as those used for bitmap blocks). I should have a patch in a bit. -Matt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200012110030.eBB0UdI88063>