Patch Name: PHNE_9819 Patch Description: s700 10.10 LAN products cumulative patch Creation Date: 97/01/14 Post Date: 97/02/24 Hardware Platforms - OS Releases: s700: 10.10 Products: N/A Filesets: Networking.LAN-KRN,B.10.10.00 Networking.LAN-RUN,B.10.10.00 Automatic Reboot?: Yes Status: General Superseded Critical: Yes PHNE_9819: OTHER Network hangs due to ip service routine not properly enabled. PHNE_7179: PANIC MP J-Series system panic during sysadmin test PHNE_7087: PANIC Lasi based MP system panic during blast testing System panic if Lasi LAN is not connected PHNE_6371: PANIC System panic when service guard is running. Path Name: /hp-ux_patches/s700/10.X/PHNE_9819 Symptoms: PHNE_9819: 1. Inbound network hangs. PHNE_7179: 1. J-Series MP systems panic, data page fault. 2. 725 panic, freeing free mbuf. 3. Cu app found inconsistent reporting dl_src_addr_length in DL_BIND RESPONSE. 4. system panics when frees a DL_UDERROR_IND message of which b_cont!= NULL. 5. DLPI should only execute retry code for ENOBUFS errors. 6. Modified promiscuous mode to use the old definitions. PHNE_7087: 1. Lasi LAN uses up to 8% of CPU/FP if it is not terminated. 2. MP systems experience silence over Lasi LAN. Outbound traffic resumes only after a packet is arrived. 3. J and K-Series MP systems panic, freeing freed mbuf. 4. On Lasi based systems, spin lock held too long if core LAN is not terminated. 5. Lanscan doesn't report correct information when the system come up if the core LAN is not connected. PHNE_6371: 1. With service guard running, a panic may occur with the message: wait_for_lock_spinner: Already own this lock 2. lanadmin and linkloop core dump on large LAN configured systems. 3. bind_req fails when running t2 over token ring with source routing. 4. Lasi LAN underrun and overrun under heavy MUX traffic. Defect Description: PHNE_9819: 1.When the network traffics are heavy, ip inbound queue is full. For some reason, IP's service routine for inbound is not scheduled (enabled). (In STREAMS's design, whenever there is any message in a queue, this queue's service routine is always enabled.) Meanwhile, since IP's queue is full, a lan driver will drop every inbound packet until IP's queue is not full. Under such situation, anything above the driver (including IP, TCP/UDP, ...) won't get any inbound message. Thus it appears the inbound path is hanging. PHNE_7179: 1. When the LAN ISR routine starts a command in the waited queue, it mistakenly forces the command to be trasmit and causes confusion to both hardware and the driver itself. 2. When hardware report NC error at the same time transmit queue is full, the inact_cmd_ptr doesn't get updated, causing mbuf of the NC command get freed twice. 3. Modified lan_dlpi.c to return SNAP information in both src and dst which are parts of DL_UNITDATA_IND primative. 4. Set b_cont field of the DL_UDERROR_IND to NULL in hp_dlpi_unitdata_out(). 5. Modified hp_dlpi_unitdata_out to do resend work only for ENOBUFS error. 6. Modified promiscuous mode to use the old definitions. PHNE_7087: 1. When the cable is not connected, sent a loopback packet to Lasi LAN does not cause the 5 second timeout. Instead, HW returns NC error immediately. As a result, LAN reset happens every second rather than once every 5 seconds. 2. On MP systems, while one CPU is executing LAN ISR, another CPU can insert a command on the back of the 1st CPU. That newly inserted command will get stuck in the queue and block all following commands from execution. The only way to unblock that queue is to receive an incoming packet. 3. On MP systems, when the transmit queue is full, the current command structure is released too soon, inviting other CPU to reuse the structure before the releasing CPU finishes using it. 4. When the cable is not connected, Lasi LAN may timeout on ABORT command. The following WAIT_SCB_CMD_ZERO will cause LAN2_LOCK be held longer than it is allowed to. Only debug kernel reports this kind of error. 5. If the cable is not connected, lanscan shows interface state UP after reboot. Reconnecting the cable will cause the state to go DOWN. PHNE_6371: 1. Lan2 driver does not release the lan2_lock while it sends a broadcast/multicast packet up stream. If the upper layer software tries to send a packet while it is in the middle of receiving, the driver will attempt to lock the same lock. 2. lanadmin and linkloop were not reserving a large enough message area size for large LAN configurations. 3. This problem was caused by t2_dlpi_fill_hdr. The routing information was being added to the new header before the llc information was extracted. If the new rif was longer than the current rif this caused the llc header to be thrashed. This in turn prevented the correct protocol value from being unlog when the stream was closed and prevented any further binds to the original protocol value. OPENCONNECT and WALMART Hotsites. 4. The throttle timer limits Lasi LAN the access to the bus. Turn off the throttle timer on Hawk systems to allow more time for Lasi LAN to do its things. SR: 4701341230 5003331066 4701302661 4701312744 5003286641 1653160531 1653165597 Patch Files: /usr/conf/lib/liblan.a /usr/sbin/lanadmin /usr/sbin/linkloop what(1) Output: /usr/conf/lib/liblan.a: lan_t2.c : $ Revision: 1.2.102.9 $ PHNE_9594(800)/ PHNE_7179(700) $ lan_dlpi.c: $ Revision: 1.3.102.23 $ PHNE_9594(800)/ PHNE_7179(700) $ lanc_input.c PHNE_9819 PHNE_9820 $Revision: 1.8.102. 8 $ $Date: 97/01/14 13:12:37 $ FILESET LAN: lib lan: Version: A.10.00 lan2.c : $ Revision: 1.7.102.15 $ PHNE_9594(800)/ PHNE_7179(700) $ /usr/sbin/lanadmin: lanadmin.c: $Revision: 1.3.102.2 $ $Date: 95/11/21 PHNE_6371/PHNE_6372 $ LAN: Version: B.10.1 $Date: 95/08/10 12:25:29 $ /usr/sbin/linkloop: linkloop.c: $Revision: 1.6.102.4 $ $Date: 95/11/21 PHNE_6371/PHNE_6372 $ LAN: Version: B.10.1 $Date: 95/08/10 12:25:29 $ cksum(1) Output: 3347589844 53248 /usr/sbin/lanadmin 3860375530 36864 /usr/sbin/linkloop 2807097371 247804 /usr/conf/lib/liblan.a Patch Conflicts: None Patch Dependencies: None Hardware Dependencies: 9000/700 Other Dependencies: None Supersedes: PHNE_6371 PHNE_7087 PHNE_7179 Equivalent Patches: None Patch Package Size: 390 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_9819 5a. For a standalone system, run swinstall to install the patch: swinstall -x autoreboot=true -x match_target=true \ -s /tmp/PHNE_9819.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/PHNE_9819.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/PHNE_9819. 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 PHNE_9819.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/PHNE_9819.depot of=/dev/rmt/0m bs=2k Special Installation Instructions: None