Re: missing files in readdir(3) on NFS export of ZFS volume (since v28?)

From: Rick Macklem <rmacklem_at_uoguelph.ca>
Date: Mon, 7 Mar 2011 18:12:43 -0500 (EST)
> Hello,
> 
> I'm running a 9-current server as compiled on Sat Mar 5 02:17:14
> CET 2011.
> 
> Since I upgraded to ZFS v28 I noticed missing files from NFS. The
> files are still accessible through NFS but they don't show up on a
> readdir(3).
> 
Readdir (in both NFS servers) depends on ZFS to reply EOPNOTSUPP for
VFS_VGET() when it cannot be done, so that Readdir will switch to
using VP_LOOKUP(). Just a wild guess, but maybe ZFS v28 isn't doing
this?

rick
> On the NFS server (files are stored on a ZFS v15 volume, not yet
> upgraded to the v28 format):
> 
> % cd /usr/ports/devel/autoconf
> % ls -i
> 311401 Makefile 204505 files 204509 pkg-plist
> 204504 distinfo 204508 pkg-descr
> 
> On the NFS client side (FreeBSD 8.2-RELEASE):
> 
> % cd /usr/ports/devel/autoconf
> % ls -i
> 204504 distinfo 204508 pkg-descr
> 204505 files 204509 pkg-plist
> 
> Yet the missing file can be accessed:
> % head -3 Makefile
> # New ports collection makefile for: autoconf
> # Date created: 7th December 2006
> # Whom: ade_at_FreeBSD.org
> 
> Note that the missing files are scattered throughout the volume,
> no relation to the inode number, as shown on a diff:
> 
> _at__at_ -1,8 +1,6 _at__at_
> 3 7 drwxr-xr-x 70 pb staff 93 4 mar 19:11 /usr/ports
> - 4 2 -rw-r--r-- 1 pb staff 241 24 jan 2007
> /usr/ports/astro/tclgeomap/pkg-plist
> 5 3 drwxr-xr-x 2 pb staff 6 22 fév 12:04 /usr/ports/astro/tkgeomap
> 6 3 drwxr-xr-x 4 pb staff 6 29 jul 2008 /usr/ports/Tools
> - 7 5 drwxr-xr-x 33 pb staff 34 25 nov 15:59 /usr/ports/accessibility
> 8 3 drwxr-xr-x 12 pb staff 14 9 fév 2009 /usr/ports/arabic
> 11 51 drwxr-xr-x 900 pb staff 901 6 mar 14:36 /usr/ports/audio
> 12 3 -rw-r--r-- 1 pb staff 584 25 aoû 2006
> /usr/ports/astro/tkgeomap/pkg-descr
> _at__at_ -16,10 +14,8 _at__at_
> 23 3 drwxr-xr-x 3 pb staff 7 24 mar 2010 /usr/ports/astro/wcslib
> 24 4 -rw-r--r-- 1 pb staff 1414 5 jan 2010
> /usr/ports/astro/wcslib/Makefile
> 25 5 drwxr-xr-x 31 pb staff 33 1 jan 23:16 /usr/ports/french
> - 26 2 -rw-r--r-- 1 pb staff 197 5 jan 2010
> /usr/ports/astro/wcslib/distinfo
> 27 63 drwxr-xr-x 1110 pb staff 1111 23 fév 15:37 /usr/ports/games
> 28 3 drwxr-xr-x 2 pb staff 4 24 mar 2010 /usr/ports/astro/wcslib/files
> - 29 2 -rw-r--r-- 1 pb staff 236 5 jan 2010
> /usr/ports/astro/wcslib/files/6-patch-configure
> 30 3 -rw-r--r-- 1 pb staff 677 5 jan 2010
> /usr/ports/astro/wcslib/files/patch-GNUmakefile
> 31 2 -rw-r--r-- 1 pb staff 401 17 jul 2009
> /usr/ports/astro/wcslib/pkg-descr
> 32 4 -rw-r--r-- 1 pb staff 1515 5 jan 2010
> /usr/ports/astro/wcslib/pkg-plist
> ...
> 
> Reverting to an old 9-current kernel (January 10, before the ZFS
> v28 patches) fixes the problem...
> --
> Sent from my FreeBSD server
> Pierre Beyssac pb_at_fasterix.frmug.org
> _______________________________________________
> freebsd-current_at_freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-current
> To unsubscribe, send any mail to
> "freebsd-current-unsubscribe_at_freebsd.org"
Received on Mon Mar 07 2011 - 22:41:31 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:12 UTC