Patch Name: PHKL_27688 Patch Description: s700_800 11.11 Over-temp/LPMC Panic Creation Date: 02/08/14 Post Date: 02/08/15 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: Yes PHKL_27688: PANIC Category Tags: defect_repair general_release critical panic Path Name: /hp-ux_patches/s700_800/11.X/PHKL_27688 Symptoms: PHKL_27688: ( SR:8606231975 CR:JAGae01211 ) A system panics when an over-temperature ENVironmental event (ENV) is followed by a Low Priority Machine Check (LPMC). Panic String: Trap Type 18 (Data memory protection fault): Stack trace: 0) panic+0x14 1) report_trap_or_int_and_panic+0x84 2) interrupt+0x1d4 3) $ihndlr_rtn+0x0 4) diag2_log+0x620 5) diag_log+0x20 6) log_lpmcs+0x78 7) lpmc_lumberjack+0x4c 8) invoke_callouts_for_self+0xc0 9) sw_service+0xb0 10) mp_ext_interrupt+0x150 11) ivti_patch_to_nop3+0x0 12) idle+0xaa8 13) swidle_exit+0x0 The panic stack trace can differ from the stack trace shown here. However, diag2_log will always be involved. Defect Description: PHKL_27688: ( SR:8606231975 CR:JAGae01211 ) The diag2 driver was not checking for address alignment when logging events into a kernel buffer. All logging events, except ENV (ENVironmental logging event), are of even length and, hence, word-aligned. Each logging event was entered into the diag2 driver's logging buffer immediately after the preceeding logging record. Since all logging records, except ENV, are of even length, the subsequent logging record would be written to a word-aligned address. The ENV (over-temperature) record is of odd length. After an ENV was logged, the next event logged (which, in all reported panics, has been an LPMC) would hit a non-word-aligned address, causing a system panic. Although, in all reported cases, the panic occurred when an LPMC was reported, theoretically, it could occur when any record was logged. The panic always occurred when attempting to log a record AFTER an over-temp condition was successfully logged. Since the over-temp record was logged successfully, it was not in the panic stack trace and it would not be obvious that an over-temp condition had occurred. Resolution: The diag2 driver code has been modified to write to and read from word-aligned addresses in the kernel logging buffer. No event can be written to a non-word-aligned address. SR: 8606231975 Patch Files: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libwsio.a(diag2.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libwsio.a(diag2.o) what(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libwsio.a(diag2.o): diag2.c $Date: 2002/08/08 12:45:49 $Revision: r11.11 /1 PATCH_11.11 (PHKL_27688) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libwsio.a(diag2.o): diag2.c $Date: 2002/08/08 12:45:49 $Revision: r11.11 /1 PATCH_11.11 (PHKL_27688) cksum(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: 3032083725 16464 /usr/conf/lib/libwsio.a(diag2.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: 3214042851 42200 /usr/conf/lib/libwsio.a(diag2.o) Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: None Equivalent Patches: PHKL_26001: s700: 11.00 s800: 11.00 Patch Package Size: 80 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_27688 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHKL_27688.depot By default swinstall will archive the original software in /var/adm/sw/save/PHKL_27688. 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_27688.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHKL_27688.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHKL_27688.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None