Patch Name: PHKL_29468 Patch Description: s700_800 11.11 PCI patch,boot-time HPMC,PCI-X,OLA/R,AGP Creation Date: 03/10/06 Post Date: 03/10/21 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_29468: PANIC MEMORY_LEAK PHKL_26464: OTHER SuperDome systems fail with HPMC when PKC card is configured. PHKL_24022: PANIC Category Tags: defect_repair hardware_enablement enhancement general_release critical panic memory_leak manual_dependencies Path Name: /hp-ux_patches/s700_800/11.X/PHKL_29468 Symptoms: PHKL_29468: ( SR:8606314066 CR:JAGae76842 ) Certain versions of the A5838 card and of the A5506B card will fail to resume after doing an On-Line Replacement (OLR) operation. The error message will include the text: Unable to resume the driver(s) ( SR:8606314038 CR:JAGae76814 ) In certain circumstances, performing the resume phase of a Online-Replacement (OLR) on multi-function PCI cards can cause a High Priority Machine Check (HPMC). This has been observed with a A6826A card. ( SR:8606311580 CR:JAGae74407 ) Attempting to perform an On-Line Replace operation on an A6826 card will fail with the following error message from the rad command: No suspend capability registered, or suspend error or with the following error message from SAM: OLRAD error: Unable to resume the driver(s) ( SR:8606321513 CR:JAGae83981 ) The symptom of this defect is a memory leak that occurs every time the ioscan command is run. ( SR:8606323226 CR:JAGae85691 ) Hardware_enablement: This product update is a member of a set needed to enable the AGP feature for platforms containing HP's new PA8800 processor. The full list of product updates required for this feature are: PHKL_29468, PHKL_29537, PHKL_29538, PHKL_29650, and PHKL_29651. If any member of this set of product updates is not installed, this product update will have no impact on your system. This member in the set of product updates describes the AGP bus in ioscan output. PHKL_27153: ( SR:8606167977 CR:JAGad37260 ) Enhancement: This product update enables card descriptions for PCI-X I/O cards. PHKL_26464: ( SR:8606230346 CR:JAGad99397 ) A SuperDome system may fail with an HPMC at boot when a PKC card is installed. The stack trace will look like: elroy_rd_io_d+0x2c h2p_rd_io_d+0x2c cspci_if_init+0x390 isc_table_traverse+0x130 wsio_init_end+0x10 io_virt_mode_config+0xf0 DoCalllist+0x3c main+0x28 $vstart+0x48 istackatbase+0x84 PHKL_24854: ( SR:8606202423 CR:JAGad71597 ) Enhancement to add support for SCSI Ultra160 core I/O and add-in bus adapters. This patch is required in order to use these cards. PHKL_24022: ( SR:8606185627 CR:JAGad54829 ) On a small percentage of A-class and L-class servers, HP-UX will fail to boot correctly from a bootp server across the network. Systems that fail have demonstrated one of two symptoms. The first symptom is that the failure generates a "6292" alert (High Priority Machine Check or HPMC) immediately after the "alloc_pdc_pages" message during a LAN boot. The second symptom is that the system may boot, but some or all I/O devices will not work correctly. This could include problems such as disks not appearing. This problem has not been seen during HP-UX boots from local hard disks. PHKL_24054: ( SR:8606184989 CR:JAGad54191 ) PCI bus walk (scan) may not configure all functions on multifunction card ( SR:8606175421 CR:JAGad44662 ) Using rad(1M), when we suspend a card,power off,power on, and suspend it again, subsequent resume operation fails (Though it is not a normal sequence). PHKL_23506: ( SR:8606172253 CR:JAGad41513 ) During HP internal testing of new hardware platforms based on SuperDome, we found that a change in the firmware initialization of the core I/O card caused HP-UX to panic. No currently available systems are exposed to this defect. Future systems that depend on this fix will include this patch on their installation media. Defect Description: PHKL_29468: ( SR:8606314066 CR:JAGae76842 ) The manufacturer of the PCI bridge chip present on the A5838 and A5506B cards changed from DEC to Intel. At the same time as the manufacturer changed, the PCI Device ID and PCI Vendor ID also changed. This change in card identification causes replace operations for OLA/R to fail. Resolution: The resolution for this defect is to check for both the Intel and the DEC versions of this PCI bridge chip and allow a replace operation to succeed even if the PCI vendor/device information has changed. ( SR:8606314038 CR:JAGae76814 ) The problem only occurs when an I/O address of zero is assigned to the first port of the card. In this instance, certain registers on the PCI cards are restored in the wrong order. This causes the second port on the card to claim I/O transactions meant for the first port. Resolution: The resolution for this problem is to restore every PCI card's registers in the correct order. ( SR:8606311580 CR:JAGae74407 ) The problem occurs because the A6826 card creates virtual I/O tree nodes that cannot and do not need to be suspended during an On-Line Replace operation. These virtual nodes cause one of the OLA/R software layers to reject the operation because they are not marked as being suspended. Resolution: The resolution for this problem is to ignore all 'virtual' I/O tree nodes while verifying that all appropriate I/O tree nodes have been suspended. ( SR:8606321513 CR:JAGae83981 ) The kernel component of the ioscan command was inadvertantly allocating unneeded memory every time it was called. Resolution: The resolution for this problem is to avoid allocating unneeded memory while running ioscan. ( SR:8606323226 CR:JAGae85691 ) This product update contains minor enhancements required to enable AGP busses. Resolution: The resolution for this problem is to modify the HP-UX source code to display information about AGP busses. PHKL_27153: ( SR:8606167977 CR:JAGad37260 ) This product update contains minor enhancements required to enable the PCI-X card description. Resolution: This product update identifies PCI-X capable I/O cards and descibes them as such in the ioscan command output. PHKL_26464: ( SR:8606230346 CR:JAGad99397 ) The problem is caused by the incorrect content in the Base Address Register (BAR) of the PKC card. The BAR is not programmed. Resolution: When configuring a PCI device, program the BAR properly based on the memory mapping type of the device and its configuration status. PHKL_24854: ( SR:8606202423 CR:JAGad71597 ) The C1010 SCSI card has 64bit-capable base address registers, however the script engine is not programmed to handle 64bit addresses. As a result, the C1010 card must only receive 32bit memory-mapped I/O addresses. Resolution: PCI services was changed to always distribute 32-bit memory mapped I/O addresses to the C1010 SCSI card. PHKL_24022: ( SR:8606185627 CR:JAGad54829 ) The defect addressed by this patch is caused by a corner case while initializing some A-class and L-class PCI I/O cards. If an I/O memory range assigned to a PCI card is near the list of available I/O ranges maintained by HP-UX, multiple PCI cards can incorrectly be assigned the same I/O range. This problem has only been seen while booting HP-UX across a network on a minimal number of systems, because the conditions required for triggering it depend on a timing interaction between system firmware and HP-UX that seldom occurs. Resolution: The resolution for this defect involved fixing a compar- ison to correctly check for the corner case that causes this problem. This patch is required in the install kernel that the failing system is booting from. Patching the failing system itself will not fix the problem. The repair must be made to the install kernel on the bootp server. The patch is included in the install kernel supplied on the September 2001 Install and Core OS media. PHKL_24054: ( SR:8606184989 CR:JAGad54191 ) The situation is that only function 0 has the multi-function bit set in the header type field. The pci bus walk code (pci_cdio.c: pci_prelim_scan_bus) expects that the multifunction bit be set in all functions except the last. So 11.11 will find function 0 and function 1, but quits searching because the header type multifunction bit is not set in function 1. Resolution: "pci_prelim_scan_bus" will scan all the functions (function 0 to 7), if function 0 has the multi-function bit set in the header type field. ( SR:8606175421 CR:JAGad44662 ) When we use rad(1M) command to SUSPEND the card, PCI CDIO will call PCI_OLAR_CFG_SAVE to save card's config data into its local storage. When we power off the card and than power on, it will reset the card's register. If SUSPEND the card again, pci_olar_suspend() will overwrite the new config data into previously saved config data. So we will loose the config data that stored earlier. If we do the RESUME the card after these two concecutive SUSPEND, PCI CDIO will restored the new config data(which is the one after initialization). So the card is become unusable. Resolution: A Check has been added in "pci_olar_suspend" to check the card is already suspended. PHKL_23506: ( SR:8606172253 CR:JAGad41513 ) The HP-UX operating system expected all firmware programmed bar registers to be initialized to a non-zero (valid address) value. Some of the bar registers on the core I/O card of some of the new SuperDome based systems were being initialized to zero, as these registers were not in use. Resolution: The HP-UX definition of correctly initialized firmware programmed bar registers has been changed to treat registers with a zero value as uninitialized. HP-UX is then able to program these registers successfully. Enhancement: No (superseded patches contained enhancements) PHKL_29468: Enhancements were delivered in a patch this one has superseded. Please review the Defect Description text for more information. SR: 8606167977 8606172253 8606175421 8606184989 8606185627 8606202423 8606230346 8606311580 8606314038 8606314066 8606321513 8606323226 Patch Files: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libpci.a(pci_cdio.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libpci.a(pci_cdio.o) what(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libpci.a(pci_cdio.o): pci_cdio.c $Date: 2003/09/19 15:42:40 $Revision: r11 .11/11 PATCH_11.11 (PHKL_29468) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libpci.a(pci_cdio.o): pci_cdio.c $Date: 2003/09/19 15:42:40 $Revision: r11 .11/11 PATCH_11.11 (PHKL_29468) cksum(1) Output: OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_32,v=HP: 3066168464 30964 /usr/conf/lib/libpci.a(pci_cdio.o) OS-Core.CORE2-KRN,fr=B.11.11,fa=HP-UX_B.11.11_64,v=HP: 2425887688 71312 /usr/conf/lib/libpci.a(pci_cdio.o) Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: This patch is one of the three needed to support the SCSI Ultra160 interface on HP-UX 11i. The three patches are PHKL_25020, PHKL_24854, PHKL_24031. These patches may be installed independently of each other and in any order. Without SCSI Ultra160 controller hardware present on the system, these changes will have no effect on your system. Supersedes: PHKL_27153 PHKL_26464 PHKL_24854 PHKL_24054 PHKL_24022 PHKL_23506 Equivalent Patches: None Patch Package Size: 70 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_29468 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHKL_29468.depot By default swinstall will archive the original software in /var/adm/sw/save/PHKL_29468. 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_29468.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHKL_29468.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHKL_29468.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: This patch is required in the install kernel that the failing system is booting from. Patching the failing system itself will not fix the problem. The repair must be made to the install kernel on the bootp server. The patch is included in the install kernel supplied on the September 2001 Install and Core OS media.