Date: Tue, 18 Sep 2007 10:28:49 -0500 From: Astrodog <astrodog@gmail.com> To: "Bruce Evans" <brde@optusnet.com.au> Cc: freebsd-fs@freebsd.org, linimon@freebsd.org Subject: Re: amd64/74811: [nfs] df, nfs mount, negative Avail -> 32/64-bit confusion Message-ID: <2fd864e0709180828sec17035m5e575b5ad9701b08@mail.gmail.com> In-Reply-To: <2fd864e0709180815y4c261252tfe9ce5c5a7130462@mail.gmail.com> References: <200709180037.l8I0bJb1003933@freefall.freebsd.org> <20070918211449.A75529@besplex.bde.org> <2fd864e0709180453l756d37c6y7dac8fa5fa8fcf15@mail.gmail.com> <2fd864e0709180514w627bb198r46f4ddecb212fd77@mail.gmail.com> <20070918224545.Y75789@besplex.bde.org> <2fd864e0709180815y4c261252tfe9ce5c5a7130462@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 9/18/07, Astrodog <astrodog@gmail.com> wrote: > > I cannot see how to get the correct result non-accidentally without > > using the hack of passing negative values as large unsigned ones. > > Passing negative values as the difference of two unsigned values works > > with NetBSD's extension to statvfs (f_bresvd), but it doesn't work for > > nfs because it requires an extra value which the protocol doesn't > > support AFAIK (not far). > > > > Bruce > > > > From the above, it doesn't appear that NFS can support negative > values, in any reasonable way... and I suppose that saying "There are > zero blocks avalible for non-privileged users" is accurate, when > bavail <= 0. > > I'm going to dig through the RFCs and see if there's an otherwise > unused or underused variable that could be used to store bresvd, for > clients that could support it. > > Thanks for the detailed explaination, > --- Harrison > The only thing I've found, thus far, is to hijack the "NULL" NFSv3 operation. From what I can tell, clients are expected to discard the value. On clients that are supported, the returned value can be what should be subtracted from bfree to get bavail. bavail can be handled as it is now in the server, so non-supporting clients wouldn't see any change in behavior, beyond a NULL nfs operation taking a few cycles longer. Any thoughts? I'm aware that this certainly isn't proper behavior... but I also can't find anything that actually uses the NULL return. --- Harrison
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?2fd864e0709180828sec17035m5e575b5ad9701b08>