Patch Name: PHKL_28139 Patch Description: s700_800 11.11 vPar enablement patch, select, nanosleep Creation Date: 03/03/05 Post Date: 03/05/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: No Category Tags: defect_repair enhancement general_release Path Name: /hp-ux_patches/s700_800/11.X/PHKL_28139 Symptoms: PHKL_28139: ( SR:8606266312 CR:JAGae30561 ) The nanosleep(2) system call may expire prematurely if the sleep time specified by the developer is not an integer multiple of a clock tick duration (10ms). For example: A sleep time of 19ms may timeout before 19ms has elapsed. PHKL_24677: ( SR:8606199504 CR:JAGad68691 ) Select(2), when called with zero file descriptors and a zero timeout value, does not return immediately as it is suppossed to, according to the man page. PHKL_24564: ( SR:8606204639 CR:JAGad73821 ) This patch is a member of a set of patches needed to enable the HP-UX Virtual Partitions product. When the HP-UX Virtual Partitions product (VPARSBASE or T1335AA) is installed, it will install the full set of required patches for that product, including this patch. If the HP-UX Virtual Partitions product is not installed, this change will have no impact on your system. Defect Description: PHKL_28139: ( SR:8606266312 CR:JAGae30561 ) HPUX supports timer granularity of one clock tick (10ms), and rounds off the user specified time to this clock tick boundary. A rounding off error in nanosleep() path causes an interval less than 10ms to be discarded causing nanosleep() to return early. Resolution: Round up a sub-10ms interval to the next clock tick period to ensure that nanosleep() timer does not expire prematurely. PHKL_24677: ( SR:8606199504 CR:JAGad68691 ) When calling select(2) with zero file descriptors, select(2) behaves as a sleep routine, returning back to the user after the specified timeout. Currently, when a timeout of zero is specified, select(2) sleeps for one clock tick before realizing the timout has been exceeded. Resolution: Select(2) now detects when the user application requests a zero timeout value and acts appropriately. PHKL_24564: ( SR:8606204639 CR:JAGad73821 ) This patch contains minor enhancements required to support the HP-UX Virtual Partitions product. Resolution: Enhancements added to support CPU migration. Enhancement: No (superseded patches contained enhancements) PHKL_28139: Enhancements were delivered in a patch this one has superseded. Please review the Defect Description text for more information. SR: 8606199504 8606204639 8606266312 Patch Files: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libpm.a(pm_timers.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libpm.a(pm_timers.o) what(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libpm.a(pm_timers.o): pm_timers.c $Date: 2003/03/04 18:15:34 $Revision: r1 1.11/3 PATCH_11.11 (PHKL_28139) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libpm.a(pm_timers.o): pm_timers.c $Date: 2003/03/04 18:15:34 $Revision: r1 1.11/3 PATCH_11.11 (PHKL_28139) cksum(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: 3759454976 10724 /usr/conf/lib/libpm.a(pm_timers.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: 2248332504 23984 /usr/conf/lib/libpm.a(pm_timers.o) Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHKL_24677 PHKL_24564 Equivalent Patches: None Patch Package Size: 60 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_28139 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHKL_28139.depot By default swinstall will archive the original software in /var/adm/sw/save/PHKL_28139. 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_28139.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHKL_28139.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHKL_28139.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None