Patch-ID# 116960-15 NOTE: *********************************************************************** READ THE TERMS OF THE AGREEMENT ("AGREEMENT") IN THE LEGAL_LICENSE.TXT FILE CAREFULLY BEFORE USING THIS SOFTWARE. BY USING THE SOFTWARE, YOU AGREE TO THE TERMS OF THIS AGREEMENT. IF YOU DO NOT AGREE TO ALL OF THE TERMS, PROMPTLY DESTROY THE UNUSED SOFTWARE. *********************************************************************** Keywords: security rpc cluster failover kcontrol nfsv2 udp dnlc strlen cfork i/o Synopsis: SunOS 5.8_x86: nfs and rpcmod patch Date: Sep/21/2006 Install Requirements: Reboot immediately after patch is installed Install in Single User Mode Solaris Release: 8_x86 SunOS Release: 5.8_x86 Unbundled Product: Unbundled Release: Xref: This patch available for SPARC as patch 116959 Topic: SunOS 5.8_x86: nfs and rpcmod patch Relevant Architectures: i386 BugId's fixed with this patch: 4044295 4193748 4249187 4276984 4293528 4306880 4331346 4338770 4349744 4353349 4356040 4356440 4362694 4368439 4392477 4400897 4400900 4407669 4409175 4414389 4415297 4417407 4427971 4465488 4486764 4492255 4495032 4512616 4517840 4653361 4658316 4664740 4680195 4725574 4736706 4768760 4774462 4857986 4880986 4899933 4932305 4945997 4976875 4987169 5016808 5082540 5105010 6262249 6272865 6329593 6342430 Changes incorporated in this version: 6272865 6329593 Patches accumulated and obsoleted by this patch: 108728-26 Patches which conflict with this patch: Patches required with this patch: 108529-29 (or greater) Obsoleted by: Files included with this patch: /kernel/fs/nfs /kernel/strmod/rpcmod /kernel/sys/nfs /kernel/sys/rpcmod /usr/include/nfs/nfs.h /usr/include/nfs/rnode.h /usr/include/sys/avl.h /usr/include/sys/avl_impl.h Problem Description: 6272865 race condition between SIGKILL and /proc PCAGENT 6329593 pr_wait_die() can hang while waiting for SIGKILL to be processed (from 116960-14) 6342430 NFS client doesn't notice the change of the file in the server because of fix for bug# 4407669 (from 116960-13) 6262249 Negative filehandle length can cause nfs3_mount system call to panic (from 116960-12) 4512616 nfsd refuses to restart and refuses to die (from 116960-11) 4653361 rpc need not break chain of mblk (from 116960-10) 5105010 VOP_PATHCONF incorrectly calculates maxfilesize, causing problems for cachefs (from 116960-09) 4976875 under some circumstances using ln and mv file vanished (from 116960-08) 4945997 nfsd intermittently chokes with unexpected TLI event (0x20) on connection-oriented (from 116960-07) 4857986 rm -rf on very large NFS trees can take a very long time 5082540 NFS client sends huge number of packets after failover (from 116960-06) 4880986 "KRPC: record fragment from client of size .." does occur with the fix 4385671 (from 116960-05) 4932305 NFS client threads may be stopped while holding directory locks 5016808 All NFS client callers of cv_wait_sig() should be safe 4987169 nfs3_readdir calls cv_wait_sig() with rwlock held (from 116960-04) 4362694 clfree is called incorrectly from rfscall and aclcall and induces a panic 4368439 clget() should use kmem_cache_free() instead of kmem_free() (from 116960-03) 4353349 customer nfs mounts an oracle filesystem on E10k mount point, cannot umount (from 116960-02) 4306880 NFS performance not scaled due to limitations on the clnt request handle cache (from 116960-01) 4899933 SunCluster needs i/f to disable clnt_cots_min_tout connection failure delay (from 108728-26) 4736706 Crash dump due to NULL pointer dereference in module nfs (from 108728-25) 4407669 spurious cache invalidation on large writes (from 108728-24) 4768760 automountd hangs if NFS threads receive NFS3ERR_JUKEBOX (from 108728-23) 4774462 Improve nfs access cache lock (nfs_acache_lock) performance (from 108728-22) 4680195 Panic/race condition in destroy_rtable() (from 108728-21) 4664740 nfs extremely slow on SunBlade 1000s and 2000s (from 108728-20) 4044295 nfs hang waiting for locked page (from 108728-19) 4465488 ps/prgetpsinfo32 hangs if NFS server doesn't respond 4725574 Locking succeeded when the file is mapped (from 108728-18) 4658316 need to revamp the fix for bugid 4356440 to work with other operating systems (from 108728-17) 4415297 Incorrect use of CALLB_CPR_SAFE_END() macro (from 108728-16) 4427971 mnttab corruption when using direct automount still shows up with patch 110700 (from 108728-15) 4495032 NFS may lose async write blocks in rare conditions (from 108728-14) 4392477 Problem with asynchronous writes under NFSv3 protocol of Solaris 8 4517840 nfs fails to write all the pages to the server due to frequent verifier changes (from 108728-13) 4492255 close(2) may return EAGAIN on "nocto" NFS mounted filesystems (from 108728-12) 4400897 NFS multi-client open same file and write almost same time cause invalid result (from 108728-11) 4356440 5.8 NFS server doesn't reflect POSIX standard for open(O_TRUNC) (from 108728-10) 4486764 System panics when nfsstat -m is run during unmount (from 108728-09) 4414389 System crashes with heavy i/o on NFS mounted filesystems (from 108728-08) 4356040 nfs_access_cache() makes umount take long time to complete 4409175 access(2) system crdup()s too often causing nfs_access_cache pollution 4400900 nfs access cache has no upper limit (from 108728-07) 4417407 NFS client writes don't get committed when writing to large files over NFS v3 (from 108728-06) 4349744 close(2) returns EAGAIN on Solaris8 NFS client (from 108728-05) 4338770 applications hang due to hanging lstat system calls (from 108728-04) 4331346 diskless client soft hangs during boot, probably due to nfs deadlock (from 108728-03) 4193748 BAD TRAP panic in strlen() 4249187 multi-threaded process deadlock during cfork, nfs reads/writes (from 108728-02) 4293528 Need Enhanced DNLC support in Solaris (from 108728-01) 4276984 "ls" does not terminate on Solaris 7 or 8 system in 32 bit mode Patch Installation Instructions: -------------------------------- For Solaris 2.0-2.6 releases, refer to the Install.info file and/or the README within the patch for instructions on using the generic 'installpatch' and 'backoutpatch' scripts provided with each patch. For Solaris 7-10 releases, refer to the man pages for instructions on using 'patchadd' and 'patchrm' scripts provided with Solaris. Any other special or non-generic installation instructions should be described below as special instructions. The following example installs a patch to a standalone machine: example# patchadd /var/spool/patch/104945-02 The following example removes a patch from a standalone system: example# patchrm 104945-02 For additional examples please see the appropriate man pages. Special Install Instructions: ----------------------------- NOTE 1: Perform patch installation in single user mode. Reboot the system immediately after patch installation. NOTE 2: To get the complete fix for bugid 4658316 (need to revamp the fix for bugid 4356440 to work with other operating systems), please also install the following patch on the server: 112221-02 (or greater) /kernel/misc/nfssrv patch NOTE 3: To get the complete fix for bugid 4664740 (nfs extremely slow on SunBlade 1000s and 2000s), please also install the following patch: 114161-01 (or greater) avl_tree, avl_node and rnode patch NOTE 4: To get the complete fix for bugid 4945997 (nfsd intermittently chokes with unexpected TLI event), please also install the following patch: 109784-03 (or greater) /usr/lib/nfs/nfsd and /usr/lib/nfs/lockd patch NOTE 5: To get the complete fix for bugid 6272865 (race condition between SIGKILL and /proc PCAGENT) and 6329593 (pr_wait_die() can hang while waiting for SIGKILL to be processed), please also install the following patch: 117351-41 (or greater) kernel patch README -- Last modified date: Thursday, September 21, 2006