Date: 17 Oct 2001 07:32:08 +0200 From: Dag-Erling Smorgrav <des@ofug.org> To: Matthew Dillon <dillon@apollo.backplane.com> Cc: John Baldwin <jhb@FreeBSD.ORG>, fs@FreeBSD.ORG Subject: Re: Some questions regarding vfs / ffs Message-ID: <xzphesyu90n.fsf@flood.ping.uio.no> In-Reply-To: <xzpg08jvsg6.fsf@flood.ping.uio.no> References: <XFMail.011016191649.jhb@FreeBSD.org> <xzpk7xvvwbw.fsf@flood.ping.uio.no> <200110170229.f9H2Tph84237@apollo.backplane.com> <xzpg08jvsg6.fsf@flood.ping.uio.no>
next in thread | previous in thread | raw e-mail | index | archive | help
Dag-Erling Smorgrav <des@ofug.org> writes: > Somebody on IRC suggested changing ffs_sync() to traverse the synclist > instead of the mountpoint's vnode list, and just comparing v_mount to > mp and ignoring vnodes that aren't "ours". It would work, but gives > me goosebumps for some reason. Another possibility, of course, is to have ffs_sync() simply check if the vnode is on a worklist (v_flags & VONWORKLIST != 0) but that requires acquiring the vnode interlock, so we gain nothing. > All of this only solves part of the problem, though - the ffs_sync() > part - there's still something screwy with sched_sync(), but I'll need > to acquite more profiling data to figure out just *what*. Actually, there's nothing screwy about sched_sync(), except that I overlooked the fact that it calls sync_fsync() (through VOP_FSYNC()) which calls ffs_sync(). Judging from collected stats, I'm wondering if there's really any point in calling ffs_sync() (indirectly) from sched_sync(), as it seems to rarely actually *do* much except screw up my interrupt latency. I guess it's useful as a safety net, but I don't really see how a vnode can be dirty and not on the sync list? Ditching the syncer nodes will also (finally) allow FreeBSD laptops to let their disks spin down when idle... DES -- Dag-Erling Smorgrav - des@ofug.org To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-fs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?xzphesyu90n.fsf>