Patch Name: PHKL_28539 Patch Description: s700_800 11.00 JFS3.3 Veritas FSO patch;dmapi panic Creation Date: 03/04/10 Post Date: 03/04/24 Hardware Platforms - OS Releases: s700: 11.00 s800: 11.00 Products: JFS 3.3; Filesets: JFS.JFS-BASE2-KRN,fr=3.3,fa=HP-UX_B.11.00_32,v=HP JFS.JFS-BASE2-KRN,fr=3.3,fa=HP-UX_B.11.00_64,v=HP Automatic Reboot?: Yes Status: General Release Critical: Yes PHKL_28539: PANIC PHKL_22122: HANG PANIC Category Tags: defect_repair general_release critical panic halts_system Path Name: /hp-ux_patches/s700_800/11.X/PHKL_28539 Symptoms: PHKL_28539: ( SR:8606290939 CR:JAGae54782 ) System panic appears as a DPF or spinlock timeout in kdm_k_get_nextevent(), with a stack trace similar to the one shown below. panic+0x14 report_trap_or_int_and_panic+0x80 trap+0xdb8 nokgdb+0x8 kdm_k_get_nextevent+0x4b8 kdm_dmapi_ioctl+0x1b8 vxportal_ioctl+0x110 spubind_cdev_ioctl+0x94 spec_ioctl+0xac vno_ioctl+0x90 ioctl+0x1f4 syscall+0x480 $syscallrtn+0x0 PHKL_22122: ( SR: 8606135465 CR: JAGad04599 ) When using FSO, an optional Veritas product that works with VxFS 3.3, the system may hang or panic. Defect Description: PHKL_28539: ( SR:8606290939 CR:JAGae54782 ) The events in hsms_outq may be freed in kdm_eventprocess() while these addresses are being traversed in kdm_k_get_nextevent(). This causes corruption of templist when these free addresses are reused. It leads either to an infinite loop that causes spinlock timeout, or a DPF, owing to an invalid pointer in kdm_k_get_nextevent(). Resolution: Now we have modified the code to take care of this race condition problem. PHKL_22122: ( SR: 8606135465 CR: JAGad04599 ) This problem is due to lack of synchronization between two VxFS 3.3 threads while accessing/updating a kernel data structure. A thread doing deferred truncation bumps the generation count even if there are outstanding holds on the structure. Another part of the VxFS code (DMAPI) assumes that a hold stabilizes the generation count. This causes a race condition, producing unpredictable behavior. Resolution: Make sure that the generation count is not changed after obtaining the read-write lock on the structure in DMAPI code before proceeding. If it is changed, retrun an error. Enhancement: No SR: 8606135465 8606290939 Patch Files: JFS.JFS-BASE2-KRN,fr=3.3,fa=HP-UX_B.11.00_32,v=HP: /usr/conf/lib/libvxfs.a(kdm33_core.o) JFS.JFS-BASE2-KRN,fr=3.3,fa=HP-UX_B.11.00_64,v=HP: /usr/conf/lib/libvxfs.a(kdm33_core.o) what(1) Output: JFS.JFS-BASE2-KRN,fr=3.3,fa=HP-UX_B.11.00_32,v=HP: /usr/conf/lib/libvxfs.a(kdm33_core.o): kdm33_core.c $Date: 2003/03/20 00:18:47 $Revision: r 11ros/3 PATCH_11.00 (PHKL_28539) JFS.JFS-BASE2-KRN,fr=3.3,fa=HP-UX_B.11.00_64,v=HP: /usr/conf/lib/libvxfs.a(kdm33_core.o): kdm33_core.c $Date: 2003/03/20 00:18:47 $Revision: r 11ros/3 PATCH_11.00 (PHKL_28539) cksum(1) Output: JFS.JFS-BASE2-KRN,fr=3.3,fa=HP-UX_B.11.00_32,v=HP: 3543236814 56084 /usr/conf/lib/libvxfs.a(kdm33_core.o) JFS.JFS-BASE2-KRN,fr=3.3,fa=HP-UX_B.11.00_64,v=HP: 2873689970 134888 /usr/conf/lib/libvxfs.a(kdm33_core.o) Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHKL_22122 Equivalent Patches: None Patch Package Size: 210 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_28539 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHKL_28539.depot By default swinstall will archive the original software in /var/adm/sw/save/PHKL_28539. 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_28539.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHKL_28539.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHKL_28539.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None