Patch Name: PHKL_25238 Patch Description: s700_800 11.11 NFS nfsd deadlock Creation Date: 01/09/26 Post Date: 01/09/27 Hardware Platforms - OS Releases: s700: 11.11 s800: 11.11 Products: N/A Filesets: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP Automatic Reboot?: Yes Status: General Release Critical: Yes PHKL_25238: HANG All NFS processes and swapper process hang. Category Tags: defect_repair general_release critical halts_system Path Name: /hp-ux_patches/s700_800/11.X/PHKL_25238 Symptoms: PHKL_25238: ( SR:8606219675 CR:JAGad88815 ) NFS and the virtual memory swapper process may hang when a system is under memory pressure and using executables through NFS loopback mounts. 'rpcinfo -u nfs' calls will hang and the following message may appear: NFS server not responding Defect Description: PHKL_25238: ( SR:8606219675 CR:JAGad88815 ) The NFS hang is a result of a deadlock that only occurs when the system is under extreme memory pressure and some files are being used through a NFS loop-back mount. While in the midst of reactivating, a process (say P1) eventually blocks waiting on the region lock for one of the process's regions. If the lock in question is held by a another process (say P2) that encountered a page-fault on that region, a deadlock could occur if the region is NFS mounted. If all the NFS daemons are deactivated due to the machine being under very heavy memory pressure, when P2 attempts to get attribute information through an RPC call to an NFS daemon, it will fail to complete and P2 will not release the region lock. This prevents the swapper from reactivating P1 or any of the NFS daemons on the system. Resolution: The region lock is now dropped before calling the function that makes the RPC call through the NFS daemons. The lock is reacquired after the call returns. This prevents the deadlock over the region lock. SR: 8606219675 Patch Files: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libvm.a(remote_vm.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libvm.a(remote_vm.o) what(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libvm.a(remote_vm.o): remote_vm.c $Date: 2001/09/18 15:16:26 $Revision: r1 1.11/1 PATCH_11.11 (PHKL_25238) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libvm.a(remote_vm.o): remote_vm.c $Date: 2001/09/18 15:16:26 $Revision: r1 1.11/1 PATCH_11.11 (PHKL_25238) cksum(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: 2982539829 14904 /usr/conf/lib/libvm.a(remote_vm.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: 1847890038 26216 /usr/conf/lib/libvm.a(remote_vm.o) Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: None Equivalent Patches: PHKL_25237: s700: 11.00 s800: 11.00 Patch Package Size: 70 KBytes Installation Instructions: Please review all instructions and the Hewlett-Packard SupportLine User Guide or your Hewlett-Packard support terms and conditions for precautions, scope of license, restrictions, and, limitation of liability and warranties, before installing this patch. ------------------------------------------------------------ 1. Back up your system before installing a patch. 2. Login as root. 3. Copy the patch to the /tmp directory. 4. Move to the /tmp directory and unshar the patch: cd /tmp sh PHKL_25238 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHKL_25238.depot By default swinstall will archive the original software in /var/adm/sw/save/PHKL_25238. If you do not wish to retain a copy of the original software, include the patch_save_files option in the swinstall command above: -x patch_save_files=false WARNING: If patch_save_files is false when a patch is installed, the patch cannot be deinstalled. Please be careful when using this feature. For future reference, the contents of the PHKL_25238.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHKL_25238.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHKL_25238.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None