My favorites | Sign in
Project Logo
                
Search
for
Updated Jul 20, 2009 by rick.macklem
Labels: Featured, Phase-Deploy
CurrentPatchRelease  
The tarball is now at patch release 1.0.1d9

Introduction

I have rebuilt the tarball, so that the binaries are sources are at patch level 1.0.1d9. (It has been tested on Darwin 9.6.0/Mac OS X 10.5.6.)

Details

If you have already installed 1.0.1d3-8, you only need to replace the Kext and mount_newnfs binaries from macosx-nfsv4-client.1.0.1d9.tar.gz tarball to upgrade.

There are two changes between 1.0.1d3 and 1.0.1d4, which patch Issues #4 and 5.

- A patch is applied to newnfs_port.c so that it gets rid of the "dismount"

popup panel when the server is alive again, using the nfs_up() function from Tiger. This handles  Issue #4 .

- A patch is applied to ncl_node.c/ncl_reclaim() so that it invalidates all

buffers. The crash described in  Issue #5  was caused by a corrupted "prev" pointer in the list of clean buffers on the vnode and I believe that was because the vnode was recycled. This should stop that from occurring. It was surprising that this didn't cause more truble, but I only saw the crash once.

Four additional patches are applied to 1.0.1d5:

- newnfs_subs.c/nfsrv_cmpmixedcae() has been changed so that it matches

all upper case DNS names in Owner and Owner_group names.

- newnfs_subs.c/nfsv4_fillattr() has been patched so that it handles the

modify_time_set and access_time_set attribute bits. As such, it will now set the modify and access times, as required.

- newnfs_acl.c has been patched so it will parse a 0 ength "who" field in

an ace and set the ace as undefined. This allows write delegations issued by Netapp filer Ontap version 7.2.4 write delegation replies to be handled.

- nfscl_rpcops.c and newnfs_port.c have been modified so that NFS4ERR_DELAY

is now handled by the functions in nfscl_rpcops.c and not newnfs_request(). This change allows a CB Recall to be doable while the client is delaying and avoids problems caused by the Renew thread being blocked.

One additional fix is applied to 1.0.1d5bis:

- nfsv4utils/mount_newnfs.c has been patched to recognize the "browse"

option. As such, automounting works for 10.5.3.

The following changes have been applied to 1.0.1d6:

- NFS4ERR_DELAY and NFS4ERRGRACE replies for the LockU Op are now handle correctly.

- The seqid # is now reset to 0 at the beginning of recovery.

- mount_newnfs now handles a nil path for Kerberized mounts.

- mount_newnfs now retries correctly when RPC attempts fail.

- mount_newnfs now does a Null RPC against the NFS server before mounting.

- mount_newnfs now supports the experimental "-A" flag, which enables NFSv4 ACL

handling via the client. You should read the caveats in the "-A" section of mount_newnfs.8 before using this option.

The following changes have been applied to 1.0.1d7:

- The filetype num is now set dynamically by Leopard, so that it can co-reside with other file system Kexts. This handles  Issue #12 .

- It now housecleans lockowner structures before unmount.

The following two additional fixes are in 1.0.1d8:

- Patched so that it handles the bogus MaxName attribute value returned by some Linux servers

- Patched to that a user can start up iTunes with an NFSv4 mounted home dir.  Issue #14 

For 1.0.1d9, Closing of NFSv4 Open Stateids is delayed until VOP_INACTIVE() ( Issue #15 ) and the state handling is sync'd up with the code in FreeBSD8 to simplify future changes.

If you have already installed 1.0.1d3-8, all you need to do is replace the newnfs kext and mount_newnfs binaries (as su, ie. "sudo -i"):

# cd ppc, intel-kext/ca.uoguelph.newnfs.fs/Support/newnfs.kext/Contents/MacOS

# cp newnfs /Library/Filesystems/ca.uoguelph.newnfs.fs/Support/newnfs.kext/Contents/MacOS

# cd ppc, intel-kext/ca,uoguelph.newnfs.fs/Support

# cp mount_newnfs /Library/Filesystems/ca.uoguelph.newnfs.fs/Support

# cd /Library/Filesystems/ca.uoguelph.newnfs.fs/Support/newnfs.kext/Contents

# - edit Info.plist and change 1.0.1dN to 1.0.1d9

# cd ppc, intel-kext/ca.uoguelph.newnfs.fs/Support

# cp mount_newnfs /Library/Filesystems/ca.uoguelph.newnfs.fs/Support

# reboot

and it should now be running the newer version.


Comment by rick.macklem, Jun 03, 2008

After changing the version in /Library/Filesystems/ca.uoguelph.newnfs.fs/Support/newnfs.kext/Contents/Info.plist to 9.3.0, the kext seems to be working ok on 10.5.3.

Comment by rick.macklem, Jun 15, 2008

I have just put the 1.0.1d5 patch release tarball up. It includes fixes for 4 Issues: - handles all upper case DNS names for Owner and Owner_group names - can set modify and access times - handles 0 length "who" fields in write delegation replies - Can now do a CB Recall while Setattr, Read or Write is delaying because of NFS4ERR_DELAY The above comments apply, but please use 1.0.1d5.


Sign in to add a comment
Hosted by Google Code