 |
» |
|
|
 |
 |
 |
|
|
 |
|
<TITLE>
TITLE: HP Tru64 UNIX - TCP SACK Panics
Copyright (c) Hewlett-Packard Company 2007. All rights reserved.
PRODUCT: HP Tru64 UNIX [R] V5.1B-4
SOURCE: Hewlett-Packard Company
ECO INFORMATION:
ECO Name: T64KIT1001187-V51BB27-E-20070404
ECO Kit Approximate Size: 4.81MB
Kit Applies To: HP Tru64 UNIX V5.1B-4 PK6 (BL27)
ECO Kit CHECKSUMS:
/usr/bin/sum results:
19764 4930
/usr/bin/cksum results:
3294731729 5048320
MD5 results:
19d0169bbe3926a0647e9cc48e4f59d7
SHA1 results:
cbbf7040f24149e1b5b72532901c9da650d3c868
ECO KIT SUMMARY:
A dupatch-based, Early Release Patch kit exists for HP Tru64 UNIX V5.1B-4
that contains solutions to the following problem(s):
Systems running with TCP Selective Acknowledgement (SACK) enabled are
susceptible to two different panics. The description of the panics follows:
PANIC: "m_copym sanity"
0 boot src/kernel/arch/alpha/machdep.c
1 panic src/kernel/bsd/subr_prf.c
2 event_timeout src/kernel/arch/alpha/cpu.c
3 pmap_update_send src/kernel/arch/alpha/pmap_update.c
4 pmap_tbsync src/kernel/arch/alpha/pmap.c
5 pmap_copy_on_write src/kernel/arch/alpha/pmap.c
6 pmap_page_protect src/kernel/arch/alpha/pmap.c
7 ubc_flush_dirty_age src/kernel/vfs/vfs_ubc.c
8 ubc_flush_dirty src/kernel/vfs/vfs_ubc.c
9 mntflushbuf src/kernel/vfs/vfs_bio.c
10 boot src/kernel/arch/alpha/machdep.c
11 panic src/kernel/bsd/subr_prf.c
12 m_copym src/kernel/bsd/uipc_mbuf.c
13 tcp_output src/kernel/netinet/tcp_output.c
14 tcp_input src/kernel/netinet/tcp_input.c
15 ipintr src/kernel/netinet/ip_input.c
16 netisr_thread src/kernel/net/netisr.c
This panic occurs because the tcp_sack_field in the tcpcb is not updated
properly. Two reasons for an improper tcp_sack_field update are:
sack_index is not reset whenever the number of entries in the sack is zero
tcp_sack_clean_list is not called when a packet does not contain the sack
entries in the tcp header option. When this occurs, header prediction
succeeds and goes for the tcp_output without updating the sack entries.
PANIC: "Unaligned kernel space access from kernel mode"
0 stop_secondary_cpu src/kernel/arch/alpha/cpu.c
1 panic src/kernel/bsd/subr_prf.c
2 event_timeout src/kernel/arch/alpha/cpu.c
3 xcpu_puts src/kernel/bsd/subr_prf.c
4 printf src/kernel/bsd/subr_prf.c
5 panic src/kernel/bsd/subr_prf.c
6 afault_trap src/kernel/arch/alpha/trap.c
7 _XentUna src/kernel/arch/alpha/locore.s
8 tcp_dooptions src/kernel/netinet/tcp_input.c
9 tcp_input src/kernel/netinet/tcp_input.c
10 ipintr src/kernel/netinet/ip_input.c
11 netisr_thread src/kernel/net/netisr.c
This panic occurs multi-CPU system because the sack option does not need to
be aligned with a 4 byte boundary. When the receiver assumes alignment on a
4 byte boundary and tries to read it as a 4 byte word, the system panics.
PANIC: "Unaligned kernel space access from kernel mode"
0 boot src/kernel/arch/alpha/machdep.c
1 panic src/kernel/bsd/subr_prf.c
2 afault_trap src/kernel/arch/alpha/trap.c
3 _XentUna src/kernel/arch/alpha/locore.s
4 tcp_dooptions src/kernel/netinet/tcp_input.c
5 tcp_input_common src/kernel/netinet/tcp_input.c
6 tcp_input src/kernel/netinet/tcp_input.c
7 ipintr src/kernel/netinet/ip_input.c
8 netisr_thread src/kernel/net/netisr.c
This panic occurs on a single CPU system because the sack option does not
need to be aligned with a 4 byte boundary. When the receiver assumes
alignment on a 4 byte boundary and tries to read it as a 4 byte word, the
system panics.
The Patch Kit Installation Instructions and the Patch Summary and Release
Notes documents provide patch kit installation and removal instructions
and a summary of each patch. Please read these documents prior to
installing patches on your system.
The patches in this ERP kit will also be available in the next mainstream
patch kit - HP Tru64 UNIX V5.1B-5.
INSTALLATION NOTES:
1) Install this kit with the dupatch utility that is included in the patch
kit. You may need to baseline your system if you have manually changed
system files on your system. The dupatch utility provides the baselining
capability.
2) The patch in this ERP kit does not have any file intersections with any
other ERP available at this time for this product version.
3) This ERP kit will NOT install over any Customer Specific Patches (CSPs)
which have file intersections with this ERP kit. Contact your normal
Service Provider for assistance if the installation of this ERP kit is
blocked by any of your installed CSPs.
INSTALLATION PREREQUISITES:
You must have installed HP Tru64 UNIX V5.1B-4 PK6 (BL27) prior to
installing this Early Release Patch Kit.
SUPERSEDE INFORMATION:
KNOWN PROBLEMS WITH THE PATCH KIT:
None.
RELEASE NOTES FOR T64KIT1001187-V51BB27-E-20070404:
Release Notes
This document summarizes the contents and special instructions for the
Tru64 UNIX V5.1B patches contained in this kit.
For information about installing or removing patches, baselining,
and general patch management, see the Patch Kit Installation
Instructions document.
1 Release Notes
This Early Release Patch Kit Distribution contains:
- fixes that resolve the problem(s) reported in:
o 19210
* for Tru64 UNIX V5.1B OSF540.ReleaseNotes.tar (BL27)
* for Tru64 UNIX V5.1B T64V51BB27AS0006-20061208.tar (BL27)
This kit includes a patch which requires system reboot.
The patches in this kit are being released early for general customer use.
Refer to the Release Notes for a summary of each patch and installation
prerequisites.
Patches in this kit are installed by running dupatch from the directory
in which the kit was untarred. For example, as root on the target system:
> mkdir -p /tmp/CSPkit1
> cd /tmp/CSPkit1
> <copy the kit to /tmp/CSPkit1>
> tar -xpvf DUV40D13-C0044900-1285-20000328.tar
> cd patch_kit
> ./dupatch
2 Special Instructions
SPECIAL INSTRUCTIONS for Tru64 UNIX V5.1B Patch C2079.00
3 Summary of CSPatches contained in this kit
Tru64 UNIX V5.1B
PatchId Summary Of Fix
----------------------------------------
C2079.00 Fix for TCP SACK unaligned access panic
4 Additional information from Engineering
None
5 Affected system files
This patch delivers the following files:
Tru64 UNIX V5.1B
Patch C2079.00
./sys/BINARY/inet.mod
CHECKSUM: 49711 570
SUBSET: OSFBIN540
[R] UNIX is a registered trademark in the United States and other countries
licensed exclusively through X/Open Company Limited.
Copyright Hewlett-Packard Company 2007. All Rights reserved.
This software is proprietary to and embodies the confidential technology
of Hewlett-Packard Company. Possession, use, or copying of this
software and media is authorized only pursuant to a valid written license
from Hewlett-Packard or an authorized sublicensor.
This ECO has not been through an exhaustive field test process.
Due to the experimental stage of this ECO/workaround, Hewlett-Packard
makes no representations regarding its use or performance. The
customer shall have the sole responsibility for adequate protection
and back-up data used in conjunction with this ECO/workaround.
|