Patch Name: PHKL_30992 Patch Description: s700_800 11.11 MO 8k sector size;FIFO;Event Port;perf;shmem Creation Date: 04/07/22 Post Date: 04/08/04 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 (superseded patches were critical) PHKL_27502: CORRUPTION Potential data loss when performing ioctl(2) DP_POLL on /dev/poll. Category Tags: defect_repair hardware_enablement enhancement general_release critical corruption Path Name: /hp-ux_patches/s700_800/11.X/PHKL_30992 Symptoms: PHKL_30992: ( SR:8606360568 CR:JAGaf21275 ) Cannot mount a filesystem written on a Magneto Optical (MO) device with a 8192 bytes/sector media. The following error message will be reported: #mount /dev/dsk/c6t0d0 /testmount /dev/dsk/c6t0d0: unrecognized file system PHKL_27686: ( SR:8606265626 CR:JAGae29883 ) Shared memory segment cannot be removed even after all processes using it no longer exist. PHKL_27502: ( SR:8606263932 CR:JAGae28258 ) When using the Event Port feature and issuing an ioctl(2) DP_POLL on the file descriptor for /dev/poll, if there is no data in the pipe, the ioctl(2) will correctly return 0 (zero). From that time forward, any ioctl(2) DP_POLL on the file descriptor for /dev/poll will return 0, even if there is data in the pipe. This only occurs when the kernel tunable streampipes is set to 0. This defect was introduced in product update PHKL_25582, which introduced the Event Port feature. PHKL_26695: ( SR:8606247419 CR:JAGae13857 ) Enhancement: This product update is a member of a set which improve the performance of mount(2) and umount(2). The full list of product updates that address this performance improvement are: PHKL_26239, PHKL_26694, PHKL_26695, PHKL_26698, and PHKL_27211. Each of these product updates may be installed independently of the others. Each provides an incremental performance improvement. PHKL_25582: ( SR:8606222220 CR:JAGad91335 ) This patch is a member of a set of patches needed to enable the Event Port pseudo driver feature delivered in PHKL_25468. The Event Port driver patch specifies the full set of required patches for this new feature. If the Event Port pseudo driver patch (or superseding patch) is not installed, this change will have no impact on your system. PHKL_23246: ( SR:8606179098 CR:JAGad48323 ) Can not mount the Magneto Optical (MO) device with a 4096 bytes/sector media. An "unrecognized file system" error message will be received when attempting to mount such a device. ( SR:8606175229 CR:JAGad44473 ) FIFO (fifo_open( )) Panic. Defect Description: PHKL_30992: ( SR:8606360568 CR:JAGaf21275 ) When mounting a filesystem, the drive is considered as a block device and is accessed via specfs using a fixed block I/O size of 4K. This works fine for all drives with less than or equal to 4K bytes/sector. But it does not suffice for devices with sector size greater than 4K. Resolution: The block I/O size for specfs has been increased to 8192 bytes. PHKL_27686: ( SR:8606265626 CR:JAGae29883 ) Shared memory segment may remain on the system due to a race condition that exists between the functions that open and close the device. The only way to remove it is to reboot the system. The problem was observed when the /dev/async device using a shared memory segment was opened and closed repetitively. Resolution: The device open/close code was modified to avoid the race condition. PHKL_27502: ( SR:8606263932 CR:JAGae28258 ) When an ioctl(2) DP_POLL is used to read the number of events in a pipe (i.e. /dev/poll), and the pipe is empty, the file descriptor for the pipe is unregistered with the Event Port driver. The write(2) system call does not re-activate event services on the file descriptor. Thus, subsequent ioctl(2) calls will continue to return 0 (an empty pipe), even if there is data in the pipe. Resolution: The write(2) system call always checks if the file descriptor is registered with the Event Port driver, and if so, re-activate the services. PHKL_26695: ( SR:8606247419 CR:JAGae13857 ) This product update contains minor changes necessary to improve the performance of umount(2) for Special filesystems (SPECFS). The final device close during an umount(2) searched the buffer cache multiple times in flushing and invalidating buffers. This operation results in unnecessary performance degradation. Resolution: The search operation done for flushing dirty buffers should remember any relevant buffers it finds so that the subsequent invalidation operation can be done more expediently. PHKL_25582: ( SR:8606222220 CR:JAGad91335 ) This change contains minor enhancements required to support the Event Port feature. Resolution: Enhancements added include a fifo and pipe subsytem interface used by the Event Port driver and respective Event Port driver callbacks. PHKL_23246: ( SR:8606179098 CR:JAGad48323 ) When mounting a file system, the drive is considered as a block device and is accessed via specfs using fixed block io size of 2K. This is ok for all the drives with less or equal to 2K bytes sectors. But it is not big enough for the devices with the sector size greater then 2K. Resolution: The block io size for specfs has been changed to 4096 bytes. ( SR:8606175229 CR:JAGad44473 ) FIFO (fifo_open( )) Panic. Resolution: Restore stack frame information (u_qsave) when returning from fifo_open( ). Enhancement: No (superseded patches contained enhancements) PHKL_30992: Enhancements were delivered in a patch this one has superseded. Please review the Defect Description text for more information. SR: 8606175229 8606179098 8606222220 8606247419 8606263932 8606265626 8606360568 Patch Files: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libfs.a(fifo_vnops.o) /usr/conf/lib/libfs.a(pipe_vnops.o) /usr/conf/lib/libfs.a(spec_vnops.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libfs.a(fifo_vnops.o) /usr/conf/lib/libfs.a(pipe_vnops.o) /usr/conf/lib/libfs.a(spec_vnops.o) what(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libfs.a(fifo_vnops.o): fifo_vnops.c $Date: 2002/07/23 15:36:53 $Revision: r 11.11/5 PATCH_11.11 (PHKL_27502) /usr/conf/lib/libfs.a(pipe_vnops.o): pipe_vnops.c $Date: 2001/10/23 13:38:36 $Revision: r 11.11/1 PATCH_11.11 (PHKL_25582) /usr/conf/lib/libfs.a(spec_vnops.o): spec_vnops.c $Date: 2004/07/05 03:18:49 $Revision: r 11.11/6 PATCH_11.11 (PHKL_30992) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libfs.a(fifo_vnops.o): fifo_vnops.c $Date: 2002/07/23 15:36:53 $Revision: r 11.11/5 PATCH_11.11 (PHKL_27502) /usr/conf/lib/libfs.a(pipe_vnops.o): pipe_vnops.c $Date: 2001/10/23 13:38:36 $Revision: r 11.11/1 PATCH_11.11 (PHKL_25582) /usr/conf/lib/libfs.a(spec_vnops.o): spec_vnops.c $Date: 2004/07/05 03:18:49 $Revision: r 11.11/6 PATCH_11.11 (PHKL_30992) cksum(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: 3660267300 16116 /usr/conf/lib/libfs.a(fifo_vnops.o) 4110857242 6160 /usr/conf/lib/libfs.a(pipe_vnops.o) 4039088595 21380 /usr/conf/lib/libfs.a(spec_vnops.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: 1404396135 38928 /usr/conf/lib/libfs.a(fifo_vnops.o) 4143754604 15912 /usr/conf/lib/libfs.a(pipe_vnops.o) 1397625459 45544 /usr/conf/lib/libfs.a(spec_vnops.o) Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHKL_27686 PHKL_27502 PHKL_26695 PHKL_25582 PHKL_23246 Equivalent Patches: PHKL_31164: s700: 11.00 s800: 11.00 Patch Package Size: 90 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_30992 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHKL_30992.depot By default swinstall will archive the original software in /var/adm/sw/save/PHKL_30992. 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_30992.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHKL_30992.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHKL_30992.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None