Patch Name: PHKL_25538 Patch Description: s700 10.26 USB Driver patch Creation Date: 01/10/30 Post Date: 02/04/26 Hardware Platforms - OS Releases: s700: 10.26 Products: N/A Filesets: OS-Core.CORE-KRN OS-Core.KERN-RUN ProgSupport.C-INC Automatic Reboot?: Yes Status: General Release Critical: Yes PHKL_25538: PANIC Path Name: /hp-ux_patches/s700/10.X/PHKL_25538 Symptoms: PHKL_25538: Porting of 10.20 patch PHKL_20477 (PHKL_20477:) ( SR:8606107476 DTS: JAGab77705 ) IF an application issues the HID_IDENT ioctl cmd (see /usr/include/sys/hidio.h) data corruption or a system panic may occur. ( SR:8606103321 DTS: JAGab69968 ) panic: data page fault in the kernel function process_done_queue. This is often accompanied by a "pipe failed to close" message appearing in the dmesg system buffer. ( SR:8606103322 DTS: JAGab69969 ) panic: data page fault in the kernel function usb_handle_irp. This is often accompanied by a "pipe failed to close" message appearing in the dmesg system buffer. The panic can occur when performing a command login from CDE login screen, but may occur at other times as well. PHKL_19041: Ported 10.20 patch PHKL_17637 to TOS. (PHKL_17637) This patch enables new functionality which adds new I/O drivers to support the B1000, C3000, and J5000 systems. This patch includes the Universal Serial Bus (USB) OHCI interface driver, the USB HUB class device driver, and the USB HID class device driver. USB HID class devices include USB keyboards and mice. Defect Description: PHKL_25538: Porting of 10.20 patch PHKL_20477 (PHKL_20477:) ( SR:8606107476 DTS: JAGab77705 ) when an application issues the HID_IDENT ioctl cmd the hid driver will corrupt memory. The nature of the corruption can not be predicted and can result in either data corruption or a system panic. Resolution: Data is correctly copied from the kernel data structure to the application. The The 1st and 2nd byte are PS/2 compatible. Set the MSb of the 3rd byte to indicate USB HID. The LSb will be set if the device supports boot protocol. The 4th byte will contain the HID sub class value. ( SR:8606103321 DTS: JAGab69968 ) Transfer descriptors are not being completed on an usb request. The interrupt handler may then access data structures which have been free'd. The pipe may fail to close because the host controller driver thinks that transfer descriptors are still allocated to the endpoint. Resolution: Transfer decriptors are not free'd until the request has completed. ( SR:8606103322 DTS: JAGab69969 ) Transfer descriptors are not being completed on an usb request. The interrupt handler may then access data structures which have been free'd. The pipe may fail to close because the host controller driver thinks that transfer descriptors are still allocated to the endpoint. Resolution: Transfer decriptors are not free'd until the request has completed. PHKL_19041: USB support is missing from the B1000, C3000, and J5000 systems. Resolution: Add support for the Universal Serial Bus. SR: 1653312066 4701398263 4701428425 8606106461 8606107476 8606103321 8606103322 Patch Files: /usr/conf/lib/libhp-ux.a(hc.o) /usr/conf/lib/libhp-ux.a(hcd.o) /usr/conf/lib/libhp-ux.a(hid.o) /usr/conf/lib/libhp-ux.a(hub.o) /usr/conf/lib/libhp-ux.a(usb.o) /usr/conf/lib/libhp-ux.a(usb_config.o) /usr/conf/lib/libhp-ux.a(usbd.o) /usr/conf/master.d/usb /usr/include/sys/hidio.h what(1) Output: /usr/conf/lib/libhp-ux.a(hc.o): 01/10/17 kern/usb/hc.c, hpux, hpux_10.26, ic5ge Revi sion 1.2 PATCH_10.26 (PHKL_25538) UNMODIFIED /usr/conf/lib/libhp-ux.a(hcd.o): 01/10/17 kern/usb/hcd.c, hpux, hpux_10.26, ic5ge Rev ision 1.2 PATCH_10.26 (PHKL_25538) UNMODIFIE D /usr/conf/lib/libhp-ux.a(hid.o): 01/10/17 kern/usb/hid.c, hpux, hpux_10.26, ic5ge Rev ision 1.2 PATCH_10.26 (PHKL_25538) UNMODIFIE D /usr/conf/lib/libhp-ux.a(hub.o): 01/10/17 kern/usb/hub.c, hpux, hpux_10.26, ic5ge Rev ision 1.2 PATCH_10.26 (PHKL_25538) UNMODIFIE D /usr/conf/lib/libhp-ux.a(usb.o): 01/10/17 kern/usb/usb.c, hpux, hpux_10.26, ic5ge Rev ision 1.2 PATCH_10.26 (PHKL_25538) UNMODIFIE D /usr/conf/lib/libhp-ux.a(usb_config.o): 01/10/17 kern/usb/usb_config.c, hpux, hpux_10.26, ic 5ge Revision 1.2 PATCH_10.26 (PHKL_25538) UN MODIFIED /usr/conf/lib/libhp-ux.a(usbd.o): 01/10/17 kern/usb/usbd.c, hpux, hpux_10.26, ic5ge Re vision 1.2 PATCH_10.26 (PHKL_25538) UNMODIFI ED /usr/conf/master.d/usb: $Revision: 1.2 kern/master/usb, hpux, hpux_10.26, ic 5ge $ $Date: 01/10/17 12:31:37 $ Hewlett-Pac kard Co. 01/10/17 kern/master/usb, hpux, hpux_10.26, ic5ge Re vision 1.2 PATCH_10.26 (PHKL_25538) UNMODIFI ED /usr/include/sys/hidio.h: $Revision: 1.2 kern/usb/hidio.h, hpux, hpux_10.26, i c5ge $ $Date: 01/10/17 12:25:33 $ Hewlett-Pa ckard Co. */ 01/10/17 kern/usb/hidio.h, hpux, hpux_10.26, ic5ge R evision 1.2 PATCH_10.26 (PHKL_25538) UNMODIF IED */ cksum(1) Output: 651546163 31760 /usr/conf/lib/libhp-ux.a(hc.o) 4289464793 32184 /usr/conf/lib/libhp-ux.a(hcd.o) 1848900786 38732 /usr/conf/lib/libhp-ux.a(hid.o) 64230735 14068 /usr/conf/lib/libhp-ux.a(hub.o) 2361881527 22608 /usr/conf/lib/libhp-ux.a(usb.o) 1642262439 11996 /usr/conf/lib/libhp-ux.a(usb_config.o) 1589400947 6960 /usr/conf/lib/libhp-ux.a(usbd.o) 151325583 6065 /usr/conf/master.d/usb 1523279568 13418 /usr/include/sys/hidio.h Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: 9000/700 Other Dependencies: None Supersedes: PHKL_19041 Equivalent Patches: PHKL_20477: s700: 10.20 Patch Package Size: 250 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_25538 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHKL_25538.depot By default swinstall will archive the original software in /var/adm/sw/patch/PHKL_25538. 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_25538.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_25538.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None