Subject: Re: Heads up: VFS_MAXFIDSIZ is gone
To: None <firstname.lastname@example.org>
From: Izumi Tsutsui <email@example.com>
Date: 07/15/2006 20:47:23
> I have just commited a change that does
> - fix alignment problems on many filesystems with the vptofh()/fhtovp()
> VOPs (tmpfs on sparc is where this all started, cd9660 with -Os
> compiled install kernels is another example)
> - changes the getfh(2) syscall to aquire a new argument (the available
> size for the filehandle)
> - got rid of the global, maximum file-id size (VFS_MAXFIDSIZ)
> This change was pretty intrusive, especially inside the NFS code. If anything
> broke, please send-pr.
> If you encounter any third-party software that uses getfh(2) and now needs
> to be changed: an example how to properly use the syscall can be found
> in src/regress/sys/fs/tmpfs/h_tools.c.
After update my NFS server, I can't NFS mount via amd(8) any longer.
(though normal NFS mount via mount_nfs(8) works)
On the NFS server (with 3.99.22 kernel and 3.99.21 userland),
mountd(8) complains "mountd: Can't get fh for /r/export"
when NFS clients try to mount directories via amd(8).
According to ktrace(1), getfh(2) (compat version) fails with E2BIG.
Any idea? Do I have to update binaries?