Patch Name: PHKL_17359 Patch Description: s700 10.20 Message queues cumulative patch Creation Date: 99/01/08 Post Date: 00/03/09 Hardware Platforms - OS Releases: s700: 10.20 Products: N/A Filesets: OS-Core.CORE-KRN Automatic Reboot?: Yes Status: General Release Critical: No (superseded patches were critical) PHKL_13611: HANG Path Name: /hp-ux_patches/s700/10.X/PHKL_17359 Symptoms: PHKL_17359: (SR:5003444307 DTS:JAGaa44276) User processes which pass an invalid message ID to the msgsnd(), msgrcv() or msgctl() system calls may hang. PHKL_13611: SR:1653231340 DTS:DSDe439913 The message queue intermittently hangs. Defect Description: PHKL_17359: (SR:5003444307 DTS:JAGaa44276) The message queue ID passed into the system call was not validated before calling msgconv(), where it is used for the lookup of an array element. Under some conditions, it was possible for the calling process to be put to sleep on an invalid wait channel, which would never be sent the wakeup() needed to make the process runnable. The priority at which the thread sleeps means it is uninterruptible and hence cannot be terminated by sending a SIGKILL. Resolution: Validate the message queue ID passed in by the user program, returning EINVAL if the ID does not match the entry in the message queue table, before calling msgconv(). PHKL_13611: SR:1653231340 DTS:DSDe439913 One call to a function taking three parameters provided only two of those parameters. SR: 1653231340 5003444307 Patch Files: /usr/conf/lib/libhp-ux.a(sysV_msg.o) what(1) Output: /usr/conf/lib/libhp-ux.a(sysV_msg.o): sysV_msg.c $Date: 99/01/08 14:21:41 $ $Revision: 1.3 8.98.4 $ PATCH_10.20 (PHKL_17359) cksum(1) Output: 2264443338 13344 /usr/conf/lib/libhp-ux.a(sysV_msg.o) Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHKL_13611 Equivalent Patches: PHKL_17360: s800: 10.20 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_17359 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHKL_17359.depot By default swinstall will archive the original software in /var/adm/sw/patch/PHKL_17359. If you do not wish to retain a copy of the original software, you can create an empty file named /var/adm/sw/patch/PATCH_NOSAVE. WARNING: If this file exists when a patch is installed, the patch cannot be deinstalled. Please be careful when using this feature. It is recommended that you move the PHKL_17359.text file to /var/adm/sw/patch for future reference. To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHKL_17359.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None