Patch Name: PHNE_25491 Patch Description: s700_800 11.11 PCI mux driver/utilities cumulative patch Creation Date: 02/01/20 Post Date: 02/02/21 Hardware Platforms - OS Releases: s700: 11.11 s800: 11.11 Products: PCI-MUX B.11.11.01 PCI-MUX B.11.11.02 PCI-MUX B.11.11.05 Filesets: PCI-MUX.PCI-MUX-KRN,fr=B.11.11.01,fa=HP-UX_B.11.11_32,v=HP PCI-MUX.PCI-MUX-KRN,fr=B.11.11.02,fa=HP-UX_B.11.11_32,v=HP PCI-MUX.PCI-MUX-KRN,fr=B.11.11.05,fa=HP-UX_B.11.11_32,v=HP PCI-MUX.PCI-MUX-KRN,fr=B.11.11.01,fa=HP-UX_B.11.11_64,v=HP PCI-MUX.PCI-MUX-KRN,fr=B.11.11.02,fa=HP-UX_B.11.11_64,v=HP PCI-MUX.PCI-MUX-KRN,fr=B.11.11.05,fa=HP-UX_B.11.11_64,v=HP PCI-MUX.PCI-MUX-RUN,fr=B.11.11.01,fa=HP-UX_B.11.11_32/64,v=HP PCI-MUX.PCI-MUX-RUN,fr=B.11.11.02,fa=HP-UX_B.11.11_32/64,v=HP PCI-MUX.PCI-MUX-RUN,fr=B.11.11.05,fa=HP-UX_B.11.11_32/64,v=HP Automatic Reboot?: Yes Status: General Release Critical: Yes PHNE_25491: PANIC PHNE_24182: PANIC PHNE_23879: OTHER Prevents mux from recognizing tty devices. Category Tags: defect_repair enhancement general_release critical panic Path Name: /hp-ux_patches/s700_800/11.X/PHNE_25491 Symptoms: PHNE_25491: 1. { SR: 8606222097 CR: JAGad91212 } OLAR functionality does not work with the 11.11 Mux driver. 2. { SR: 8606227010 CR: JAGad96072 } Mux initialization has to be made more robust. 3. { SR: 8606215957 CR: JAGad85129 } Terminal cross talk when using A6749A PCI-MUX 64 port with 25 ft cable 4. { SR: 8606220546 CR: JAGad89684 } The system panics with Data Page Fault, after logging the following diagnostic message in the system buffers, "q_data_count >= q_size, possibly corrupting memory" 5. { SR: 8606223851 CR: JAGad92948 } Addition of q4 debugging functionality to PCI-MUX. PHNE_24182: 1) The Error message "Mux timed out waiting for flow control to clear." is logged when condition is not true. 2) System panic caused when callout table overflows with entires from mega_clear_hang. 3) Killing a process would sometimes leave hung ports. 4) Once in a great while writes of data larger than 4k cause the system to panic. Dumps show EQNX_sst_write on the stack and the memory beyond the uio_hack data buffer corrupted by the written data. 5) When running on systems which are greatly stressed, it is possible to drop characters, especially on 8 port cards, when running at baud rates in excess of 9600 baud. PHNE_23879: 1) 64p Mux devices with chips produced by ATMEL using 25ft cables sometimes fail to initialize correctly. These boards may be identified by the letters "VAT" on the Super Serial Processor asic. Symptoms include blinking lights on port modue and/or unrecognized devices as shown by ioscan. 2) There was no way to distinguish 3.3v cards from 5v cards. Emux_diag was enhanced to show the Revision Id as part of the board satus information. Defect Description: PHNE_25491: 1. { SR: 8606222097 CR: JAGad91212 } The SAM interface displays "NOT OLAR-able" for the PCI MUX card hence rendering the Mux card not OLAR-able. Resolution: An error in the build scripts resulted in the OLAR code not being included in the libraries. Changes have been made to include the OLAR bits into the binaries. 2. { SR: 8606227010 CR: JAGad96072 } The initialization code for the mux product has to be made more robust. This involves enhancing ring initialization patterns and resetting registers that could have been corrupted in the case of a card reset. Resolution: The initialization process has been modified to pre-set all necessary registers with appropriate values and the ring initialization has been made more robust. 3. { SR: 8606215957 CR: JAGad85129 } A6749A, PCI mux products have been encountering terminal I/O problems such as "cross talk" where data from another session is displayed on the wrong terminal. Resolution: Fix has been made to reset corrupt memory addresses that might have been saved in the event of a card reset which would lead to crosstalk. 4. { SR: 8606220546 CR: JAGad89684 } The "delay()" function call in the function eqnx_mux0_sst_write() causes the system to panic under a certain corner case. Resolution: The panic was a result of argument mismatch. The "delay()" function call has been fixed for this corner case, to pass appropriate arguments hence fixing the panic. 5. { SR: 8606223851 CR: JAGad92948 } Enhance Mux product to include PCI-MUX and EISA-MUX code symbols and hence allow data structures from this code to be formatted using q4. This would help faster analysis of crash dumps. Resolution: A new library libpci_muxdbg.o has been added to the product. This library contains the necessary symbolic information required for kernel debugging. PHNE_24182: 1) Coding error prevented untimeout() from being called which removes the timeout interrupt handler from the callout table. When the timeout expires, the interrupt hander is called to print the message. 2) Error #1 allows timeouts to accrue in the timeout callout table. 3) Error #1 also prevented the close routine from flushing the output buffers leaving the driver in a flow-controled state. A while() statement caused the code to loop forever waiting for the flag to clear. 4) It appears a hardware register is being corrupted and set to -1 during a write. This in turn causes the driver to uiomove all the remaining data (uio_resid) into the drivers internal buffer (uio_hack). If the size of the data moved is > 4k, memory beyond uio_hack is overwritten. Since this can be anything, anything can happen. 5) A race condition can occur when both the line discipline and the board do flow control. PHNE_23879: 1) Board fails to synchronize when using 25ft cables. 2) Emux_diag did not provide a mechanism to differentiate between 3.3v and 5v mux cards. Emux_diag was modified to display the Revision Id information on the board. 5v 8p boards have a value of 4, 64p boards a value of 5. 3.3v 8p boards have a value of 5 and 64p boards a value of 6. SR: 8606173669 8606201501 8606222097 8606227010 8606215957 8606220546 8606223851 Patch Files: PCI-MUX.PCI-MUX-KRN,fr=B.11.11.01,fa=HP-UX_B.11.11_32,v=HP: PCI-MUX.PCI-MUX-KRN,fr=B.11.11.02,fa=HP-UX_B.11.11_32,v=HP: PCI-MUX.PCI-MUX-KRN,fr=B.11.11.05,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libpci_mux.a /usr/conf/lib/libpci_muxdbg.o /usr/conf/master.d/pci_mux PCI-MUX.PCI-MUX-KRN,fr=B.11.11.01,fa=HP-UX_B.11.11_64,v=HP: PCI-MUX.PCI-MUX-KRN,fr=B.11.11.02,fa=HP-UX_B.11.11_64,v=HP: PCI-MUX.PCI-MUX-KRN,fr=B.11.11.05,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libpci_mux.a /usr/conf/lib/libpci_muxdbg.o /usr/conf/master.d/pci_mux PCI-MUX.PCI-MUX-RUN,fr=B.11.11.01,fa=HP-UX_B.11.11_32/64, v=HP: PCI-MUX.PCI-MUX-RUN,fr=B.11.11.02,fa=HP-UX_B.11.11_32/64, v=HP: PCI-MUX.PCI-MUX-RUN,fr=B.11.11.05,fa=HP-UX_B.11.11_32/64, v=HP: /usr/bin/emux_diag /usr/bin/emux_stty what(1) Output: PCI-MUX.PCI-MUX-KRN,fr=B.11.11.01,fa=HP-UX_B.11.11_32,v=HP: /usr/conf/lib/libpci_mux.a: HP PCI Mux Driver, FILESET PCI-MUX-KRN Version B.11. 11.06 PHNE_25491 Copyright (c) 2000 Hewlett-Packard Company HP PCI Mux Driver, FILESET PCI-MUX-KRN Version B.11. 11.06 PHNE_25491 Copyright (c) 2000 Hewlett-Packard Company /usr/conf/lib/libpci_muxdbg.o: HP PCI Mux Debug Library, FILESET PCI-MUX-KRN Versio n B.11.11.06 PHNE_25491 Copyright (c) 2000 Hewlett-Packard Company /usr/conf/master.d/pci_mux: $Revision: 1.1.71.7 $ PCI-MUX.PCI-MUX-KRN,fr=B.11.11.01,fa=HP-UX_B.11.11_64,v=HP: /usr/conf/lib/libpci_mux.a: HP PCI Mux Driver, FILESET PCI-MUX-KRN Version B.11. 11.06 PHNE_25491 Copyright (c) 2000 Hewlett-Packard Company HP PCI Mux Driver, FILESET PCI-MUX-KRN Version B.11. 11.06 PHNE_25491 Copyright (c) 2000 Hewlett-Packard Company /usr/conf/lib/libpci_muxdbg.o: HP PCI Mux Debug Library, FILESET PCI-MUX-KRN Versio n B.11.11.06 PHNE_25491 Copyright (c) 2000 Hewlett-Packard Company /usr/conf/master.d/pci_mux: $Revision: 1.1.71.7 $ PCI-MUX.PCI-MUX-RUN,fr=B.11.11.01,fa=HP-UX_B.11.11_32/64, v=HP: /usr/bin/emux_diag: HP PCI/EISA Mux diagnostic (emux_diag), Version B.11 .11.06 PHNE_25491 /usr/bin/emux_stty: HP PCI/EISA Mux stty (emux_stty), Version B.11.11.06 PHNE_25491 cksum(1) Output: PCI-MUX.PCI-MUX-KRN,fr=B.11.11.01,fa=HP-UX_B.11.11_32,v=HP: 25407026 132738 /usr/conf/lib/libpci_mux.a 3049005829 196076 /usr/conf/lib/libpci_muxdbg.o 3995436964 4296 /usr/conf/master.d/pci_mux PCI-MUX.PCI-MUX-KRN,fr=B.11.11.01,fa=HP-UX_B.11.11_64,v=HP: 3808369928 215312 /usr/conf/lib/libpci_mux.a 2813083246 244184 /usr/conf/lib/libpci_muxdbg.o 3995436964 4296 /usr/conf/master.d/pci_mux PCI-MUX.PCI-MUX-RUN,fr=B.11.11.01,fa=HP-UX_B.11.11_32/64, v=HP: 2737919793 253952 /usr/bin/emux_diag 266269965 32768 /usr/bin/emux_stty Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: None Other Dependencies: None Supersedes: PHNE_23879 PHNE_24182 Equivalent Patches: PHNE_23881: s700: 10.20 s800: 10.20 PHNE_25489: s700: 11.00 s800: 11.00 Patch Package Size: 1100 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 PHNE_25491 5. Run swinstall to install the patch: swinstall -x autoreboot=true -x patch_match_target=true \ -s /tmp/PHNE_25491.depot By default swinstall will archive the original software in /var/adm/sw/save/PHNE_25491. 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 PHNE_25491.text file is available in the product readme: swlist -l product -a readme -d @ /tmp/PHNE_25491.depot To put this patch on a magnetic tape and install from the tape drive, use the command: dd if=/tmp/PHNE_25491.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None