On Jul 19, 2007, at 11:23 AM, Albert Chin wrote: > We have a X4100 running b66 exporting ZFS filesystems via NFS to > several HP-UX clients. Due to bug 6538387, > http://bugs.opensolaris.org/bugdatabase/view_bug.do?bug_id=6538387, we > must mount the ZFS filesystems from our X4100 server as NFSv2.
Just to be clear, that bug was filed against the Solaris NFS server; however, the evaluation cleared our server and implicated the HP-UX client. The bug was closed back in April. I've attached the bug evaluation. > However, this causes problems with getconf(1) on this system: > hp-ux# mount -o vers=2 b66:/opt/tww /mnt > hp-ux# getconf NAME_MAX /mnt > getconf NAME_MAX /mnt: Operation not supported > > hp-ux# mount -o vers=3 b66:/opt/tww /mnt > hp-ux# getconf NAME_MAX /mnt > 255 > NFS2 has no protocol support for querying the server's pathconf capabilities. The NFS3 protocol uses the FSINFO procedure to convey pathconf info between the server and client. The NFS4 protocol defines attributes to query for support and existence of named attrs. On a Solaris client, getconf NAME_MAX over a NFS2 mount simply prints "undefined". Without protocol support, it isn't possible to query NAME_MAX in a way that will interoperate with NFS2 servers from different vendors. > We can "zfs set xattr=off" on the ZFS filesystems as, according to > zfs(1m): > xattr=on | off > Controls whether extended attributes are enabled for > this file system. The default value is "on". > > However, this isn't enough. Is it possible to disable the extra > attribute bits used by NFS when NFSv3 is being used by the client? We > don't need any extra attribute bits more than the standard UNIX > permissions. > This won't fix the getconf NAME_MAX issue over NFS2, but since you asked... I can't speak for the HP client, but in Solaris, support for named attrs can be disabled using the -o noxattr mount option. This should work for all native Solaris file systems (NFS, ZFS, UFS, tmpfs, etc). Setting the ZFS xattr attribute as you did would work too. Just FYI, but named attr support is not related to getconf NAME_MAX. NAME_MAX describes the max length of a single path component. The Solaris pathconf() cmds related to named attrs are: _PC_XATTR_ENABLED: does the file system support named attrs? _PC_XATTR_EXISTS: do any named attrs exist for this file/dir? I don't know of any "standardized" pathconf cmds to query named attr support, so they will most likely be different on HP-UX. Jeff -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: hpbug.txt URL: <http://mail.opensolaris.org/pipermail/nfs-discuss/attachments/20070719/b1e7fe2f/attachment.txt>