Patch Name: PHKL_5048 Patch Description: s700 9.01 Fixes potential SDS data corruption, et. al. Creation Date: 95/02/09 Post Date: 95/02/15 Hardware Platforms - OS Releases: s700: 9.01 Products: N/A Filesets: KERN-BLD Automatic Reboot?: Yes Status: General Release Critical: Yes PHKL_5048: CORRUPTION PHKL_3797: PANIC PHKL_2936: PANIC PHKL_2296: PANIC PHKL_2295: PANIC Path Name: /hp-ux_patches/s700/9.X/PHKL_5048 Symptoms: PHKL_5048: Applies several fixes for bugs found post-release. One includes: "Fixes a potential data corruption that can occur when performing raw SDS reads which span multiple stripes into a buffer that is not 32 bytes aligned. The corruption can affect up to the last 32 bytes of each stripe prior to the last one. Note that filesystem I/O's, swap, and dd(1) are not susceptible to this corruption." Check the Defect Description field for information on the other superseded patches. Defect Description: PHKL_5048: See customer visible symptoms. Several problems fixed, so replication would be difficult. Previous patches: PHKL_3512: Changed physstrat to allow interruptable DIL just like it does on the s300. PHKL_3797: The kernel will panic with a trap type 18 when a process fragments the 3rd/4th quadrant resource map. The map becomes fragmented when process(s) heavily use memory mapped files or shared memory, generating space between subsequent mappings. This causes the internal data structure to fragment and grow. Eventually the kernel panics accessing an address like 0.80XXX in the VM system, possibly pageremove(). The failure is an overwriting of the the internal hash array by the 3rd/4th quadrant resource map. The space allocated for the map was smaller than what the map thought it contained and fragmentation overlayed the page directory hash chains. PHKL_3490: Fix for problem that PHKL_2936 caused for Scorpio 75. If a system doesn't support the HW TLB miss handler, we do not enable checks for the defects. Also, a bug in PDC leaves store hints off when they should be on, so we force them on. PHKL_2936: This patch fixes three problems. The first relates to the maximum data size restriction in EXEC_MAGIC a.out. The second problem relates to the false traps "trap 255" and "trap 254" panics. The third problem relates to false "trap 253" panics. This patch fixes three problems. The first relates to the maximum data size in an EXEC_MAGIC a.out. The 9.01 release on Series 700 supports EXEC_MAGIC a.out's which should have allowed a combined text + data size of ~1.9 Gb. However, a limitation on maxdsiz was not removed, therefore the maximum data size was still limited to ~960 Mb. This patch removes that restriction. The second problem relates to false "trap 255" and "trap 254" panics. If your system still experiences these panics after installing this patch, contact your Customer Support representative. The third problem relates to false "trap 253" panics. PHKL_2296: This patch removes maxdsiz restriction in EXEC_MAGIC a.outs and also fixes false traps "trap 255" and "trap 254" panics. This patch fixes two problems. The first relates to the maximum data size in an EXEC_MAGIC a.out. The 9.01 release on Series 700 supports EXEC_MAGIC a.out's which should have allowed a combined text + data size of ~1.9 Gb. However, a limitation on maxdsiz was not removed, therefore the maximum data size was still limited to ~960 Mb. This patch removes that restriction. The second problem relates to false "trap 255" and "trap 254" panics. If your system still experiences these panics after installing this patch, contact your Customer Support representative. PHKL_2295: This patch removes limitation on maxdsize in EXEC_MAGIC a.outs and fixes the false "trap 255" and "trap 254" panics. PHKL_2294: S700 -- Remove bad maxdsiz limit for EXEC_MAGIC a.outs This patch fixes a problem with the maximum data size in an EXEC_MAGIC a.out. The 9.01 release on Series 700 supports EXEC_MAGIC a.out's. This change should have allowed a combined text + data size of ~1.9 Gb. However, a limitation on maxdsiz was not removed, therefore the maximum data size was still limited to ~960 Mb. This patch removes that restriction. SR: 4701279885 5003181255 Patch Files: /etc/conf/libhp-ux.a(asm_vm.o) /etc/conf/libhp-ux.a(locore.o) /etc/conf/libhp-ux.a(machdep.o) /etc/conf/libhp-ux.a(subr_prf.o) /etc/conf/libhp-ux.a(vm_machdep.o) what(1) Output: /etc/conf/libhp-ux.a(asm_vm.o): asm_vm.s $Revision: 1.53.81.3 $ $Date: 95/01/19 11:5 8:30 $ PATCH_9.01 (PHKL_5048) /etc/conf/libhp-ux.a(locore.o): locore.s $Revision: 1.108.81.4 $ $Date: 95/01/19 11: 58:03 $ PATCH_9.01 (PHKL_5048) /etc/conf/libhp-ux.a(machdep.o): machdep.c $Revision: 1.118.81.4 $ $Date: 95/01/1 9 11:58:34 $ PATCH_9.01 (PHKL_5048) /etc/conf/libhp-ux.a(subr_prf.o): subr_prf.c $Revision: 1.61.81.3 $ $Date: 95/01/19 1 2:00:03 $ PATCH_9.01 (PHKL_5048) /etc/conf/libhp-ux.a(vm_machdep.o): vm_machdep.c $Revision: 1.150.81.9 $ $Date: 95/01/1 9 11:57:22 $ PATCH_9.01 (PHKL_5048) sum(1) Output: 1367667856 10944 /etc/conf/libhp-ux.a(asm_vm.o) 3618192900 56028 /etc/conf/libhp-ux.a(locore.o) 3382060210 28416 /etc/conf/libhp-ux.a(machdep.o) 1104028948 13624 /etc/conf/libhp-ux.a(subr_prf.o) 3697733525 51700 /etc/conf/libhp-ux.a(vm_machdep.o) Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHKL_1953 PHKL_2110 PHKL_2281 PHKL_2294 PHKL_2295 PHKL_2296 PHKL_2516 PHKL_2936 PHKL_3490 PHKL_3512 PHKL_3797 Equivalent Patches: PHKL_5050: s800: 9.00 PHKL_5048: s700: 9.01 PHKL_5049: s700: 9.03 9.05 PHKL_5051: s800: 9.04 Patch Package Size: 220 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. Copy the patch to your /tmp directory and unshar it: cd /tmp cp patch_source/PHKL_5048 . sh PHKL_5048 3. Become root and run update: /etc/update 4. Use the cursor keys to select "Change Source or Destination ->" and press [Return]. 5. Select "From Tape Device to Local System ..." in the Change window and 6. Change "Source: /dev/rmt/0m" to "Source: /tmp/PHKL_5048.updt" 7. Press "Done" (f4). 8. Follow the standard directions for update. Update moves the original software to /system/PHKL_5048/orig. Keep this file to recover from any potential problems. You should move the .text file to /system/PHKL_5048 for future reference. To put this patch on a magnetic tape and update from the tape drive, use dd: dd if=PHKL_5048.updt of=/dev/rmt/0m bs=2048 Special Installation Instructions: None