Can not read from ZFS exported over NFSv4 but write to it
Rick Macklem
rmacklem at uoguelph.ca
Wed Oct 24 23:56:56 UTC 2012
Yamagi Burmeister wrote:
> Hello
>
> On Tue, 23 Oct 2012 17:55:15 -0400 (EDT)
> Rick Macklem <rmacklem at uoguelph.ca> wrote:
>
> > > # ZFS
> > > /usr/home/yamagi
> > > # UFS
> > > /mnt
> > > V4: / -sec=sys 192.168.0.13
> > >
> > For ZFS, all volumes down to yamagi must be exported.
> > You don't show what your ZFS setup is, but you either
> > need to export "home" and "usr" if those are ZFS volumes.
> > (The above /etc/exports would be ok, only if /, /usr and
> > /home are all UFS volumes and /usr/home/yamagi is the root
> > of a ZFS volume.) For UFS, non-exported volumes can be
> > traversed by "mount", but for ZFS that is not the case.
> >
> > The only way I know of to fix this inconsistency is to
> > disable the traversal capability for UFS, but that would
> > be a POLA violation, so the inconsistency (caused by ZFS
> > checking exports itself instead of leaving to the VFS layer)
> > remains.
> >
> > OR
> > you can specify the root of V4 in the exported volume.
> > For example, you could:
> > # ZFS
> > /usr/home/yamagi
> > V4: /usr/home/yamagi -sec=sys 192.168.0.13
> >
> > And then the client mount would be:
> > a:/ on /mnt
> > since "/" would be at /usr/home/yamagi. (If you do this,
> > the /mnt UFS volume wouldn't be mountable via NFSv4.)
>
> Okay, I didn't know that. What about adding a small notice to the
> nfsv4
> (4) manpage to put users into the right direction?
>
Yep, both nfsv4(4) and exports(5) should be fixed for this. (The
current man pages were written for non-ZFS cases, because I didn't
realize ZFS would be different;-)
> A correct /etc/exports didn't solve the problem. So I took some
> tcpdumps, while analyzing them I noticed that packages send by client
> never arived at the server. After I changed the NIC (I was using a
> rather cheap age(4) onboard NIC) everything worked okay. Apparently
> NFSv4 exhibited a bug in the driver that never showed up before.
Yep, a majority of NFS issues that I've looked at (in particular ones
related to terrible performance) have been a network fabric problem
and most often the NIC/NIC driver.
One common area of difficulties is TSO, so if you wanted to, you
could try age(4) again, but with TSO disabled.
> I'm
> sorry that i've wasted your time.
>
Not at all wasted, except that my suggestion didn't help;-)
Glad you figured it out and let us know.
Have fun with it, rick
> Thanks again,
> Yamagi
>
> --
> Homepage: www.yamagi.org
> XMPP: yamagi at yamagi.org
> GnuPG/GPG: 0xEFBCCBCB
More information about the freebsd-fs
mailing list