Date: Wed, 24 Oct 2012 19:56:48 -0400 (EDT) From: Rick Macklem <rmacklem@uoguelph.ca> To: Yamagi Burmeister <lists@yamagi.org> Cc: freebsd-fs@freebsd.org Subject: Re: Can not read from ZFS exported over NFSv4 but write to it Message-ID: <1319632362.2803236.1351123008648.JavaMail.root@erie.cs.uoguelph.ca> In-Reply-To: <20121024213602.b727c557f0332f28a66f87cc@yamagi.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Yamagi Burmeister wrote: > Hello > > On Tue, 23 Oct 2012 17:55:15 -0400 (EDT) > Rick Macklem <rmacklem@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@yamagi.org > GnuPG/GPG: 0xEFBCCBCB
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1319632362.2803236.1351123008648.JavaMail.root>