turning off the NFS attribute cache
Scott Long
scottl at samsco.org
Sun Sep 18 20:06:18 PDT 2005
Erez Zadok wrote:
> Good news!
>
> After browsing the 6.0 kernel sources, I found out that freebsd DOES indeed
> have a way of turning off the attribute cache. It's not enough to just set
> nfs_args->acregmin and friends, but you also need to
>
> nfs_args->flags |= NFSMNT_ACREGMIN
>
> Otherwise, the kernel ignores what you set in the ->acregmin field. So, to
> completely turn off the attrcache on freebsd, you have to set four fields in
> struct nfs_args to 0, and turn four flags on in ->flags.
>
> It's cumbersome, but it works. You may still want to consider offering a
> "noac" flag for convenience, which'd set all eight values as needed (as some
> OSs do). At the very least, please document specifically in the mount_nfs
> man page how one turns off the attribute cache completely.
>
> Anyway, I was able to verify this in 5.4 and 6.0 (SNAP001). And it looks
> like the NFSMNT_ACREGMIN type of flags have existed as far back as 4.x, so I
> suspect that as long as the implementation was correct, even old versions of
> BSD should work well now with Amd.
>
> I'll release a quick new version of am-utils (6.1.2.1) with this fix,
> specifically because I have a few freebsd users who complained about this
> bug.
>
> I would like to ask whomever is responsible for maintaining am-utils for
> FreeBSD to consider importing 6.1.2.1 into your ports tree. Currently
> you're stuck at an ancient 6.0.10. 6.1.x fixes numerous bugs other than
> this latest one, plus it offers a host of new performance and security
> features.
>
> Thanks,
> Erez.
Thanks for looking into this and adapting am-utils for it. Would you
mind submitting a report to the bug database so that we can track this?
http://www.freebsd.org/send-pr.html. As for importing a newer am-utils,
it's been talked about, but I don't expect it to happen for 6.0. Thanks!
Scott
More information about the freebsd-fs
mailing list