Patch Name: PHKL_12306 Patch Description: s700 10.20 Intrpt stack overflow; EMC; SCSI; PCI; CCIO perf Creation Date: 97/09/03 Post Date: 97/09/09 Hardware Platforms - OS Releases: s700: 10.20 Products: N/A Filesets: OS-Core.CORE-KRN ProgSupport.C-INC Automatic Reboot?: Yes Status: General Superseded Critical: Yes PHKL_12306: HANG PHKL_11332: PANIC PHKL_11002: OTHER T600 will not BOOT PHKL_10769: PANIC PHKL_8908: PANIC CORRUPTION Panic should occur only if root volume is LVM on built-in SCSI in 710, 720, 715/50, 725/50. Corruption should only occur on QUANTUM LPS525S on built-in SCSI in 710, 720, 715/50, 725/50. PHKL_8187: HANG PHKL_7987: HANG Path Name: /hp-ux_patches/s700/10.X/PHKL_12306 Symptoms: PHKL_12306: Glance reports 0 MB/s. EINVAL on read/write to FC EMC Symmetrix. System hang. Device hang. PHKL_11632: SCSI bus resets when probing bus with DLT library robotic arm via ioscan. PHKL_11332: (4701356766/ DSDe437007; 4701353888/ DSDe436271) T600 systems panics under heaving i/o load stress testing during lab tests. PHKL_11002: (4701353888/ DSDe436271) T600 systems will not boot without this patch on 10.20 HP-UX. PHKL_10769: On C200 and newer workstations with PCI there is a possible HPMC that can occur due to a hardware bug in certain revisions of the PCI bus ASIC. This patch prevents the HPMC from happening. PHKL_10755: Performance enhancements for PCI SCSI (Ultra-SCSI). PHKL_9965: The performance of some drivers (mostly Networking, and for example ATM) was not optimal on Cache Coherent IO systems such as the K-series. PHKL_8908: "SCSI: Unhandled interrupt" and resulting bus reset can cause panic during boot of 710, 715/50, 720 and 725/50 workstations if root disk is LVM and on built-in SCSI bus. It's theoretically possible for the bus reset to cause data corruption on QUANTUM LPS525S disks on the bus. Some M/O drives will not work on the above systems plus 705, 715/33, 730, 735 and 755. PHKL_8187: Select timeouts are retried forever, i.e. I/O's never complete when a device is removed. SCSI bus hang and reset. PHKL_7987: System hang. Select timeouts with EMC/Symmetrix disk array. Defect Description: PHKL_12306: bp->b_resid updated after km_io_done. Select timeout not being retried during sd_open. Unhandled interrupt on 53C895 in single-ended and/or high voltage differential mode. scsi_update_tag_state not always getting called to restart device after Queue Full. PHKL_11632: Driver was not enabling LASI SCSI burst-mode transfers. Driver was using uninitialized variables to initialize chip registers on first open. DLT library robotics do not do synchronous transfers which exposed the bug. PHKL_11332: (4701356766/ DSDe437007; 4701353888/ DSDe436271) I/O stress tests panic on some of the internal T600 test machines. PHKL_11002: (4701353888/ DSDe436271) This patch is needed for 10.20 HP-UX bring up on T600 systems. PHKL_10769: Certain revisions of the PCI bus ASIC can cause an HPMC due to a incorrectly decoded memory address. Only one 4K page of memory per 256Megabytes of real memory are affected. The fix involves mapping the page(s) out so that they are unavailable to the system. PHKL_10755: The new B180 and C200 workstations include PCI Ultra SCSI devices. The SCSI subsystem has been enhanced to provide optimal performance for for these devices. PHKL_9965: Drivers using the IO_CONTIGUOUS flag were not delivering optimal performance on Cache Coherent IO platforms. The CCIO mapping routine was making unnecessary calls to other low level subroutines. PHKL_8908: The c720 driver does not lisc->sclk soon enough. Chip timing parameters are set up incorrectly. PHKL_8187: Select timeouts are retried forever. B_NDELAY should eliminate retries on select timeout. Zalon chip bug results in SCSI bus hang. PHKL_7987: Bug in scsi_schedule_retry causes hang. 10 ms select timeout period is too short. SR: 1653228106 4701337394 4701346122 4701353888 4701354837 4701354845 4701356766 4701360693 5000698738 5003330746 5003345496 Patch Files: /usr/conf/io/dma.h /usr/conf/lib/libhp-ux.a(dma_A.o) /usr/conf/lib/libhp-ux.a(dma_s700.o) /usr/conf/lib/libhp-ux.a(eisa.o) /usr/conf/lib/libhp-ux.a(io.o) /usr/conf/lib/libhp-ux.a(ios_int.o) /usr/conf/lib/libhp-ux.a(ios_mem.o) /usr/conf/lib/libhp-ux.a(pa_ccio.o) /usr/conf/lib/libhp-ux.a(pa_cdio.o) /usr/conf/lib/libhp-ux.a(pa_lvl1.o) /usr/conf/lib/libhp-ux.a(pa_map.o) /usr/conf/lib/libhp-ux.a(scsi_c720.o) /usr/conf/lib/libhp-ux.a(scsi_ctl.o) /usr/conf/lib/libhp-ux.a(scsi_disk.o) /usr/conf/lib/libhp-ux.a(wsio_scsi.o) /usr/conf/lib/libhp-ux.a(wsio_util.o) /usr/conf/machine/cpu.h /usr/include/machine/cpu.h /usr/include/sys/dma.h what(1) Output: /usr/conf/io/dma.h: dma.h $Date: 97/05/06 19:10:56 $ $Revision: 1.5.98.3 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(dma_A.o): dma_A.c $Date: 97/05/06 19:28:47 $ $Revision: 1.12 .98.4 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(dma_s700.o): dma_s700.c $Date: 97/05/06 19:21:39 $ $Revision: 1.6.98.3 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(eisa.o): eisa.c $Date: 97/05/06 19:19:30 $ $Revision: 1.11.98 .2 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(io.o): io.c $Date: 97/05/07 09:02:22 $ $Revision: 1.3.98.2 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(ios_int.o): ios_int.c $Date: 97/05/06 19:25:20 $ $Revision: 1.10 .98.2 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(ios_mem.o): ios_mem.c $Date: 97/05/06 19:26:47 $ $Revision: 1.9. 98.2 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(pa_ccio.o): pa_ccio.c $Date: 97/05/16 01:04:22 $ $Revision: 1.6. 98.8 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(pa_cdio.o): pa_cdio.c $Date: 97/05/08 19:37:16 $ $Revision: 1.8. 98.9 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(pa_lvl1.o): pa_lvl1.c $Date: 97/05/06 19:17:04 $ $Revision: 1.5. 98.7 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(pa_map.o): pa_map.c $Date: 97/05/29 09:24:49 $ $Revision: 1.7.9 8.4 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(scsi_c720.o): scsi_c720.c $Date: 97/08/29 09:57:39 $ $Revision: 1.5.98.30 $ PATCH_10.20 (PHKL_12306) /usr/conf/lib/libhp-ux.a(scsi_ctl.o): scsi_ctl.c $Date: 97/09/03 09:40:31 $ $Revision: 1.9.98.32 $ PATCH_10.20 (PHKL_12306) /usr/conf/lib/libhp-ux.a(scsi_disk.o): scsi_disk.c $Date: 97/08/29 09:57:36 $ $Revision: 1.7.98.23 $ PATCH_10.20 (PHKL_12306) /usr/conf/lib/libhp-ux.a(wsio_scsi.o): wsio_scsi.c $Date: 97/05/13 17:10:49 $ $Revision: 1.4.98.8 $ PATCH_10.20 (PHKL_11002) /usr/conf/lib/libhp-ux.a(wsio_util.o): wsio_util.c $Date: 96/11/25 13:25:20 $ $Revision: 1.7.98.3 $ PATCH_10.20 (PHKL_8908) /usr/conf/machine/cpu.h: cpu.h $Date: 97/05/08 19:11:58 $ $Revision: 1.63.98. 5 $ PATCH_10.20 (PHKL_11002) /usr/include/machine/cpu.h: cpu.h $Date: 97/05/08 19:11:58 $ $Revision: 1.63.98. 5 $ PATCH_10.20 (PHKL_11002) /usr/include/sys/dma.h: dma.h $Date: 97/05/06 19:10:56 $ $Revision: 1.5.98.3 $ PATCH_10.20 (PHKL_11002) cksum(1) Output: 3566042905 12864 /usr/conf/io/dma.h 2951764362 12648 /usr/conf/lib/libhp-ux.a(dma_A.o) 323304034 7068 /usr/conf/lib/libhp-ux.a(dma_s700.o) 1042418826 31496 /usr/conf/lib/libhp-ux.a(eisa.o) 166564594 161448 /usr/conf/lib/libhp-ux.a(io.o) 2235177246 7356 /usr/conf/lib/libhp-ux.a(ios_int.o) 4020459163 6044 /usr/conf/lib/libhp-ux.a(ios_mem.o) 2313204930 13612 /usr/conf/lib/libhp-ux.a(pa_ccio.o) 2349558433 13896 /usr/conf/lib/libhp-ux.a(pa_cdio.o) 1848508402 27268 /usr/conf/lib/libhp-ux.a(pa_lvl1.o) 281897050 3996 /usr/conf/lib/libhp-ux.a(pa_map.o) 4153652426 90304 /usr/conf/lib/libhp-ux.a(scsi_c720.o) 3802856937 66732 /usr/conf/lib/libhp-ux.a(scsi_ctl.o) 3768205668 18876 /usr/conf/lib/libhp-ux.a(scsi_disk.o) 2641532404 155148 /usr/conf/lib/libhp-ux.a(wsio_scsi.o) 4161920378 13056 /usr/conf/lib/libhp-ux.a(wsio_util.o) 929303060 25859 /usr/conf/machine/cpu.h 929303060 25859 /usr/include/machine/cpu.h 3566042905 12864 /usr/include/sys/dma.h Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHKL_7987 PHKL_8187 PHKL_8908 PHKL_9965 PHKL_10755 PHKL_10769 PHKL_11002 PHKL_11332 PHKL_11632 Equivalent Patches: PHKL_12307: s800: 10.20 Patch Package Size: 730 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_12306 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHKL_12306.depot 5b. For a homogeneous NFS Diskless cluster run swcluster on the server to install the patch on the server and the clients: swcluster -i -b This will invoke swcluster in the interactive mode and force all clients to be shut down. WARNING: All cluster clients must be shut down prior to the patch installation. Installing the patch while the clients are booted is unsupported and can lead to serious problems. The swcluster command will invoke an swinstall session in which you must specify: alternate root path - default is /export/shared_root/OS_700 source depot path - /tmp/PHKL_12306.depot To complete the installation, select the patch by choosing "Actions -> Match What Target Has" and then "Actions -> Install" from the Menubar. 5c. For a heterogeneous NFS Diskless cluster: - run swinstall on the server as in step 5a to install the patch on the cluster server. - run swcluster on the server as in step 5b to install the patch on the cluster clients. By default swinstall will archive the original software in /var/adm/sw/patch/PHKL_12306. 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_12306.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_12306.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: Due to the number of objects in this patch, the customization phase of the update may take more than 10 minutes. During that time the system will not appear to make forward progress, but it will actually be installing the objects.