Date: Thu, 13 Feb 2003 11:13:56 -0800 From: David Schultz <dschultz@uclink.Berkeley.EDU> To: Terry Lambert <tlambert2@mindspring.com> Cc: Brooks Davis <brooks@one-eyed-alien.net>, Darren Pilgrim <dmp@pantherdragon.org>, Matthew Emmerton <matt@gsicomp.on.ca>, Daxbert <daxbert_news@dweebsoft.com>, Bill Moran <wmoran@potentialtech.com>, Heinrich Rebehn <rebehn@ant.uni-bremen.de>, freebsd-questions@FreeBSD.ORG, freebsd-fs@FreeBSD.ORG Subject: Re: Why is there no JFS? Message-ID: <20030213191356.GA14560@HAL9000.homeunix.com> In-Reply-To: <3E4BA1D2.E259308@mindspring.com> References: <045401c2d2db$f9d45c30$0a0aa8c0@dweebsoft.com> <20030212225631.GA10375@HAL9000.homeunix.com> <005801c2d2eb$aa5fae60$1200a8c0@gsicomp.on.ca> <3E4ADDDE.5040208@pantherdragon.org> <3E4B138F.26E32E75@mindspring.com> <20030212210721.A9481@Odin.AC.HMC.Edu> <20030213051952.GA11572@HAL9000.homeunix.com> <3E4B467B.4DCF6D5@mindspring.com> <20030213074449.GA12084@HAL9000.homeunix.com> <3E4BA1D2.E259308@mindspring.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Thus spake Terry Lambert <tlambert2@mindspring.com>: > David Schultz wrote: > > > The easy way to fix this is to insert a new dependency for the > > > completion of the allocation. Basically, this would put in a > > > stall barrier that would cause the outstanding I/O to drain before > > > the new I/O was attempted. All other operations behind the one > > > that caused the stall would b held off, which would avoid the > > > starvation deadlock you describe. Most likely, all this would > > > require some minor code to maintain a running tally of virtual vs. > > > real free block count. > > > > It really isn't a big deal. You're saying you can fix the problem > > where allocations can sometimes fail on a busy 99% full > > filesystem, but on such a filesystem, you're just as likely to hit > > it when it's 100% full. Kirk's solution is simple and has the > > advantage of not requiring additional dependency tracking for the > > common case. > > No, actually it should work for "100% full", as well, as long as > that "100% full" is "the real disk" vs. "the real disk, after all > pending updates have been applied". > > In other words, if it would have worked with soft updates turned > off, then it will work with soft updates turned on. My point was that a busy disk that is nearly 100% full will probably experience intermitted ``disk full'' errors anyway, so it suffices to simply deal with cases such as 'rm -rf foo && immediately create lots more files', which softupdates does handle in -CURRENT. > IMO, this is not the reason for them being off on /; the real > reason is as I've stated: sysinstall expects the common case to > be an initial install, not operations after the initial install, > and so does not turn it on by default. The original reason was due to the possibility of installworld failing, due to the case described above not being handled particularly well in FreeBSD 4.X. Sysinstall is perfectly happy with creating a root FS with softupdates enabled. If someone wants to bother changing the default for what little difference it might make in installworld/installkernel times, I would support it. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030213191356.GA14560>