Date: Tue, 15 Mar 2005 19:33:04 -0800 (PST) From: Don Lewis <truckman@FreeBSD.org> To: jroberson@chesapeake.net Cc: arch@FreeBSD.org Subject: Re: Freeing vnodes. Message-ID: <200503160333.j2G3X4sP061855@gw.catspoiler.org> In-Reply-To: <20050315195525.F20708@mail.chesapeake.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 15 Mar, Jeff Roberson wrote: > On Tue, 15 Mar 2005, Matthew Dillon wrote: >> syncer: I've always wanted to rewrite the syncer to be per-mount >> or per-physical-device so it could sync out to multiple >> physical devices simultaniously. It would be nice to do this on a per-physical-device basis to avoid multiple threads contending for the same device, but this looks like it would be difficult due to the way that devices can be sliced, diced, and merged. It would also be nice if buf_daemon was a per-device or per-mount. I haven't tested it lately, but in the past I was able to deadlock buf_daemon by loopback NFS mounting a local file system and doing a lot of write activity (iozone works well for this). > The syncer is kind of bogus anyway, because it mostly just destroys the > buf daemon's delayed writes by forcing it all out at once. It does > redundant work, except for updating inodes, which should be all it really > does. The syncer also sets an upper bound on the time that file modifications go unwritten to disk. Buf_daemon sleeps while numdirtybuffers <= lodirtybuffers, so a file updated on a quiet system would not be written to disk for an arbitrarily long time without the syncer.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200503160333.j2G3X4sP061855>