netdev
[Top] [All Lists]

Fw: PROBLEM: tcp_output.c bug

To: netdev@xxxxxxxxxxx
Subject: Fw: PROBLEM: tcp_output.c bug
From: Andrew Morton <akpm@xxxxxxxx>
Date: Sat, 4 Jun 2005 19:51:22 -0700
Cc: Rommer <rommer@xxxxxxxxx>
Sender: netdev-bounce@xxxxxxxxxxx

Begin forwarded message:

Date: Sun, 05 Jun 2005 04:25:43 +0300
From: Rommer <rommer@xxxxxxxxx>
To: linux-kernel@xxxxxxxxxxxxxxx
Subject: PROBLEM: tcp_output.c bug


[1.] My server goes to reboot for about 1 time per 2 weeks because of kernel bug
in tcp_output.c

[2.] My server goes to reboot because of /proc/sys/kernel/panic set to 1, but I
determined the problem using netconsole module. It is a
"kernel BUG at net/ipv4/tcp_output.c:919!"
I looked the code on line 919 in tcp_ouput.c and found a macro BUG_ON in
function tcp_retrans_try_collapse(...). I disabled calling of this function by
running: echo 0 >/proc/sys/net/ipv4/tcp_retrans_collapse, and now server works
fine about 4 weeks. Also I looked the code of this function in tcp_output.c from
kernel 2.6.11.8 sources and it is the same.

[3.] sh scripts/ver_linux
Linux us401.activeby.net 2.6.9 #4 SMP Fri Apr 22 16:46:30 EEST 2005 i686 i686
i386 GNU/Linux

Gnu C                  3.3.2
Gnu make               3.79.1
binutils               2.14.90.0.6
util-linux             2.12
mount                  2.12
module-init-tools      2.4.26
e2fsprogs              1.35
jfsutils               1.1.3
reiserfsprogs          2003------------->
reiser4progs           line
pcmcia-cs              3.1.31
quota-tools            3.06.
PPP                    2.4.1
isdn4k-utils           3.3
nfs-utils              1.0.6
Linux C Library        2.3.3
Dynamic linker (ldd)   2.3.3
Procps                 3.2.0
Net-tools              1.60
Kbd                    1.08
Sh-utils               5.2.1
Modules Loaded         netconsole ipv6 ipt_TOS iptable_mangle ip_conntrack_ftp
ip_conntrack_irc ipt_LOG ipt_limit ipt_multiport autofs ipt_REJECT ipt_state
ip_conntrack iptable_filter ip_tables e100 mii ohci1394 ieee1394 sg scsi_mod
parport_pc parport microcode loop thermal processor fan button battery ac ext3
jbd raid1

[4.] part of the of the log of netconsole
------------[ cut here ]------------
kernel BUG at net/ipv4/tcp_output.c:919!
invalid operand: 0000 [#1]
SMP
Modules linked in: netconsole ipv6 ipt_TOS iptable_mangle ip_conntrack_ftp ip_co
nntrack_irc ipt_LOG ipt_limit ipt_multiport autofs ipt_REJECT ipt_state iptable_
filter ip_conntrack ip_tables e100 mii ohci1394 ieee1394 sg scsi_mod parport_pc
microcode parport thermal fan loop processor button battery ext3 tcp_v4_rcv+0x71
c/0x980
   nf_hook_slow+0xc9/0x100 [<c0271ab0>] ip_rcv_finish+0x0/0x2a0
   [<c02717ec>] ip_rcv+0x41c/0x4e0
   [<c0271ab0>]
   ip_rcv_finish+0x0/0x2a0 [<c010c650>] [<c0255b8f>] do_gettimeofday+0x20/0xc0
   netif_receive_skb+0x1df/0x2d0
   e100_poll+0x5ac/0x620 [e100] [<f8cd6b9c>]
   [<c0255e21>] net_rx_action+0x81/0x110
   [<c0125dea>] __do_softirq+0xba/0xd0
   [<c0125e2d>]
   do_softirq+0x2d/0x30 [<c0108e35>] do_IRQ+0x105/0x130 [<c038a3a0>]
   unknown_bootoption+0x0/0x180
   [<c0106a4c>] common_interrupt+0x18/0x20
   [<c0104030>] default_idle+0x0/0x40
   [<c038a3a0>] unknown_bootoption+0x0/0x180 [<c010405c>]
   default_idle+0x2c/0x40 [<c01040eb>]
   cpu_idle+0x3b/0x50 [<c038a97d>]
   [<c038a3a0>] start_kernel+0x19d/0x1e0

Code: fe  unknown_bootoption+0x0/0x180e9 7f ff ff c7 44 24 08 e1 72 28 c0 54 89
24 04 24 e8 89 1c b3 7e fc ff fe 3a 0f e9 ff 0b ff c9 02 d7 c0 ca 2d 0a e9 fe ff
   ff 97 03 c0 8b 83
May be this log damaged because of UDP

[6.] I don't know what cause the kernel panic

[7.]
[7.2.] cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 2
model name      : Intel(R) Xeon(TM) CPU 2.80GHz
stepping        : 5
cpu MHz         : 2807.502
cache size      : 512 KB
physical id     : 0
siblings        : 2
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid xtpr
bogomips        : 5537.79

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 15
model           : 2
model name      : Intel(R) Xeon(TM) CPU 2.80GHz
stepping        : 5
cpu MHz         : 2807.502
cache size      : 512 KB
physical id     : 0
siblings        : 2
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid xtpr
bogomips        : 5603.32

processor       : 2
vendor_id       : GenuineIntel
cpu family      : 15
model           : 2
model name      : Intel(R) Xeon(TM) CPU 2.80GHz
stepping        : 5
cpu MHz         : 2807.502
cache size      : 512 KB
physical id     : 3
siblings        : 2
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid xtpr
bogomips        : 5603.32

processor       : 3
vendor_id       : GenuineIntel
cpu family      : 15
model           : 2
model name      : Intel(R) Xeon(TM) CPU 2.80GHz
stepping        : 5
cpu MHz         : 2807.502
cache size      : 512 KB
physical id     : 3
siblings        : 2
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 2
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe cid xtpr
bogomips        : 5603.32

[7.3.] cat /proc/modules
netconsole 3040 - - Live 0xf8cce000
ipv6 258208 - - Live 0xf8e05000
ipt_TOS 2216 - - Live 0xf8d0c000
iptable_mangle 2536 - - Live 0xf8ca4000
ip_conntrack_ftp 72628 - - Live 0xf8d47000
ip_conntrack_irc 71636 - - Live 0xf8d34000
ipt_LOG 6856 - - Live 0xf8ce7000
ipt_limit 2248 - - Live 0xf8cd0000
ipt_multiport 1736 - - Live 0xf8ca6000
autofs 17096 - - Live 0xf8d0e000
ipt_REJECT 6792 - - Live 0xf8ce4000
ipt_state 1640 - - Live 0xf8cde000
ip_conntrack 47300 - - Live 0xf8d16000
iptable_filter 2632 - - Live 0xf8821000
ip_tables 17120 - - Live 0xf8c94000
e100 34664 - - Live 0xf8cd4000
mii 4744 - - Live 0xf8c91000
ohci1394 35564 - - Live 0xf8c9a000
ieee1394 114680 - - Live 0xf8cea000
sg 38408 - - Live 0xf8c81000
scsi_mod 124780 - - Live 0xf8ca8000
parport_pc 26208 - - Live 0xf8c79000
parport 41544 - - Live 0xf885f000
microcode 7200 - - Live 0xf884e000
loop 15696 - - Live 0xf882b000
thermal 13008 - - Live 0xf8830000
processor 17824 - - Live 0xf8848000
fan 3692 - - Live 0xf8829000
button 6328 - - Live 0xf8802000
battery 9260 - - Live 0xf8825000
ac 4524 - - Live 0xf8805000
ext3 126024 - - Live 0xf886d000
jbd 65760 - - Live 0xf8836000
raid1 16936 - - Live 0xf881b000

[7.4.]  cat /proc/ioports
0000-001f : dma1
0020-0021 : pic1
0040-0043 : timer0
0050-0053 : timer1
0060-006f : keyboard
0070-0077 : rtc
0080-008f : dma page reg
00a0-00a1 : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : ide1
01f0-01f7 : ide0
0376-0376 : ide1
03c0-03df : vga+
03f6-03f6 : ide0
0400-047f : 0000:00:1f.0
    0400-0403 : PM1a_EVT_BLK
    0404-0405 : PM1a_CNT_BLK
    0408-040b : PM_TMR
    0428-042f : GPE0_BLK
0480-04bf : 0000:00:1f.0
0500-051f : 0000:00:1f.3
0cf8-0cff : PCI conf1
a000-afff : PCI Bus #01
    a000-a07f : 0000:01:00.0
b000-b03f : 0000:02:0b.0
    b000-b03f : e100
f000-f00f : 0000:00:1f.1
    f000-f007 : ide0
    f008-f00f : ide1

cat /proc/iomem
00000000-0009f7ff : System RAM
0009f800-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000cffff : Video ROM
000d0000-000d17ff : Adapter ROM
000f0000-000fffff : System ROM
00100000-7fedffff : System RAM
    00100000-002c15ac : Kernel code
    002c15ad-0038721f : Kernel data
7fee0000-7fee2fff : ACPI Non-volatile Storage
7fee3000-7feeffff : ACPI Tables
7fef0000-7fefffff : reserved
7ff00000-7ff003ff : 0000:00:1f.1
e0000000-efffffff : PCI Bus #01
    e0000000-efffffff : 0000:01:00.0
f0000000-f1ffffff : PCI Bus #01
    f1000000-f103ffff : 0000:01:00.0
f3000000-f301ffff : 0000:02:0b.0
    f3000000-f301ffff : e100
f3020000-f3020fff : 0000:02:0b.0
    f3020000-f3020fff : e100
f4000000-f43fffff : 0000:00:00.0
fec00000-ffffffff : reserved

[7.5.] /sbin/lspci -vvv
00:00.0 Host bridge: Intel Corp. 82875P Memory Controller Hub (rev 02)
          Subsystem: Asustek Computer, Inc.: Unknown device 80f6
          Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
          Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- 
<TAbort-
<MAbort+ >SERR- <PERR-
          Latency: 0
          Region 0: Memory at f4000000 (32-bit, prefetchable) [size=4M]
          Capabilities: [e4] #09 [2106]
          Capabilities: [a0] AGP version 3.0
                  Status: RQ=31 SBA+ 64bit- FW+ Rate=x1,x2,x4
                  Command: RQ=0 SBA- AGP- 64bit- FW- Rate=<none>

00:01.0 PCI bridge: Intel Corp. 82875P Processor to AGP Controller (rev 02)
(prog-if 00 [Normal decode])
          Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
          Status: Cap- 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- 
<TAbort-
<MAbort- >SERR- <PERR-
          Latency: 64
          Bus: primary=00, secondary=01, subordinate=01, sec-latency=32
          I/O behind bridge: 0000a000-0000afff
          Memory behind bridge: f0000000-f1ffffff
          Prefetchable memory behind bridge: e0000000-efffffff
          BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B-

00:1e.0 PCI bridge: Intel Corp. 82801BA/CA/DB/EB/ER Hub interface to PCI Bridge
(rev c2) (prog-if 00 [Normal decode])
          Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
          Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- 
<TAbort-
<MAbort- >SERR- <PERR-
          Latency: 0
          Bus: primary=00, secondary=02, subordinate=02, sec-latency=32
          I/O behind bridge: 0000b000-0000bfff
          Memory behind bridge: f2000000-f3ffffff
          Prefetchable memory behind bridge: fff00000-000fffff
          BridgeCtl: Parity- SERR+ NoISA+ VGA- MAbort- >Reset- FastB2B-

00:1f.0 ISA bridge: Intel Corp. 82801EB/ER (ICH5/ICH5R) LPC Bridge (rev 02)
          Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
          Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
          Latency: 0

00:1f.1 IDE interface: Intel Corp. 82801EB/ER (ICH5/ICH5R) Ultra ATA 100 Storage
Controller (rev 02) (prog-if 8a [Master SecP P
riP])
          Subsystem: Asustek Computer, Inc. P4P800 Mainboard
          Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
          Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
          Latency: 0
          Interrupt: pin A routed to IRQ 18
          Region 0: I/O ports at <unassigned>
          Region 1: I/O ports at <unassigned>
          Region 2: I/O ports at <unassigned>
          Region 3: I/O ports at <unassigned>
          Region 4: I/O ports at f000 [size=16]
          Region 5: Memory at 7ff00000 (32-bit, non-prefetchable) [size=1K]

00:1f.3 SMBus: Intel Corp. 82801EB/ER (ICH5/ICH5R) SMBus Controller (rev 02)
          Subsystem: Asustek Computer, Inc. P4P800 Mainboard
          Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
          Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
          Interrupt: pin B routed to IRQ 17
          Region 4: I/O ports at 0500 [size=32]

01:00.0 VGA compatible controller: Silicon Integrated Systems [SiS] 315PRO
PCI/AGP VGA Display Adapter (prog-if 00 [VGA])
          Subsystem: Silicon Integrated Systems [SiS] 315PRO PCI/AGP VGA Display
Adapter
          Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
          Status: Cap+ 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
          Latency: 39 (750ns min, 4000ns max)
          Interrupt: pin A routed to IRQ 16
          BIST result: 00
          Region 0: Memory at e0000000 (32-bit, prefetchable) [size=256M]
          Region 1: Memory at f1000000 (32-bit, non-prefetchable) [size=256K]
          Region 2: I/O ports at a000 [size=128]
          Expansion ROM at <unassigned> [disabled] [size=64K]
          Capabilities: [40] Power Management version 2
                  Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                  Status: D0 PME-Enable- DSel=0 DScale=0 PME-
          Capabilities: [50] AGP version 2.0
                  Status: RQ=15 SBA- 64bit- FW- Rate=x1,x2,x4
                  Command: RQ=0 SBA- AGP- 64bit- FW- Rate=<none>

02:0b.0 Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] (rev 0c)
          Subsystem: Intel Corp. EtherExpress PRO/100 S Desktop Adapter
          Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
          Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
          Latency: 32 (2000ns min, 14000ns max), cache line size 08
          Interrupt: pin A routed to IRQ 23
          Region 0: Memory at f3020000 (32-bit, non-prefetchable) [size=4K]
          Region 1: I/O ports at b000 [size=64]
          Region 2: Memory at f3000000 (32-bit, non-prefetchable) [size=128K]
          Expansion ROM at <unassigned> [disabled] [size=64K]
          Capabilities: [dc] Power Management version 2
                  Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA
PME(D0+,D1+,D2+,D3hot+,D3cold+)
                  Status: D0 PME-Enable+ DSel=0 DScale=2 PME-

[7.6.] cat /proc/scsi/scsi
Attached devices:

Kernel config attached

--
Best regards,
Roman


Attachment: config
Description: Text document

<Prev in Thread] Current Thread [Next in Thread>