Fedora 15: Linux 2.6.40 + tg3 = 고통

Fedora 15: Linux 2.6.40 + tg3 = 고통

Fedora 15를 실행하는 IBM BladeCenter가 있습니다. 2.6.38 커널에서는 모든 것이 잘 작동하지만 2.6.40 커널로 부팅하면 몇 초 후에 연결이 끊어집니다. 모듈을 제거했다가 다시 삽입하면 tg3연결이 다시 끊어지기 전에 약 5초 동안 복원됩니다.

듀얼 Xeon 블레이드입니다. 2.8GHz Xeon 2개, HT 및 2GB RAM이 있습니다. 블레이드 서버는 BIOS 버전 1.13을 실행하는 8832-L1X입니다. 출력은 lspci다음과 같습니다

00:00.0 Host bridge: Broadcom CMIC-LE Host Bridge (GC-LE chipset) (rev 33)    
00:00.1 Host bridge: Broadcom CMIC-LE Host Bridge (GC-LE chipset)    
00:00.2 Host bridge: Broadcom CMIC-LE Host Bridge (GC-LE chipset)    
00:01.0 VGA compatible controller: ATI Technologies Inc Rage XL (rev 27)
00:0f.0 Host bridge: Broadcom CSB6 South Bridge (rev b0)
00:0f.1 IDE interface: Broadcom CSB6 RAID/IDE Controller (rev b0)
00:0f.2 USB Controller: Broadcom CSB6 OHCI USB Controller (rev 05)
00:0f.3 ISA bridge: Broadcom GCLE-2 Host Bridge
00:10.0 Host bridge: Broadcom CIOB-E I/O Bridge with Gigabit Ethernet (rev 12)
00:10.2 Host bridge: Broadcom CIOB-E I/O Bridge with Gigabit Ethernet (rev 12)
01:00.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5704S Gigabit Ethernet (rev 02)    
01:00.1 Ethernet controller: Broadcom Corporation NetXtreme BCM5704S Gigabit Ethernet (rev 02)

dmesg다음은 kernel-PAE-2.6.38.8-32.fc15.i686(작동 중)에서 발췌한 내용 입니다 .

[11.545123] tg3.c:v3.116 (December 3, 2010)
[11.545152] tg3 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[11.599499] tg3 0000:01:00.0: eth0: Tigon3 [partno(BCM95704A41) rev 2002] (PCIX:133MHz:64-bit) MAC address
[11.599510] tg3 0000:01:00.0: eth0: attached PHY is serdes (1000Base-SX Ethernet) (WireSpeed[0])
[11.599518] tg3 0000:01:00.0: eth0: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[0]
[11.599525] tg3 0000:01:00.0: eth0: dma_rwctrl[769f4000] dma_mask[64-bit]
[11.599577] tg3 0000:01:00.1: PCI INT B -> GSI 17 (level, low) -> IRQ 17
[11.627997] tg3 0000:01:00.1: eth1: Tigon3 [partno(BCM95704A41) rev 2002] (PCIX:133MHz:64-bit) MAC address
[11.628066] tg3 0000:01:00.1: eth1: attached PHY is serdes (1000Base-SX Ethernet) (WireSpeed[0])
[11.628074] tg3 0000:01:00.1: eth1: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[0] TSOcap[1]
[11.628082] tg3 0000:01:00.1: eth1: dma_rwctrl[769f4000] dma_mask[64-bit]
[22.000286] tg3 0000:01:00.0: eth0: Link is up at 1000 Mbps, full duplex
[22.000294] tg3 0000:01:00.0: eth0: Flow control is off for TX and off for RX

이것은 kernel-PAE-2.6.40.6-0.fc15.i686의 것입니다(작동하지 않음):

[10.262141] tg3.c:v3.119 (May 18, 2011)
[10.262177] tg3 0000:01:00.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[10.309325] tg3 0000:01:00.0: eth0: Tigon3 [partno(BCM95704A41) rev 2002] (PCIX:133MHz:64-bit) MAC address         
[10.309336] tg3 0000:01:00.0: eth0: attached PHY is serdes (1000Base-SX Ethernet) (WireSpeed[0], EEE[0])
[10.309344] tg3 0000:01:00.0: eth0: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[1] TSOcap[1]
[10.309351] tg3 0000:01:00.0: eth0: dma_rwctrl[769f4000] dma_mask[64-bit]
[10.309431] tg3 0000:01:00.1: PCI INT B -> GSI 17 (level, low) -> IRQ 17
[10.361613] tg3 0000:01:00.1: eth1: Tigon3 [partno(BCM95704A41) rev 2002] (PCIX:133MHz:64-bit) MAC address         
[10.361624] tg3 0000:01:00.1: eth1: attached PHY is serdes (1000Base-SX Ethernet) (WireSpeed[0], EEE[0])
[10.361633] tg3 0000:01:00.1: eth1: RXcsums[1] LinkChgREG[0] MIirq[0] ASF[0] TSOcap[1]
[10.361640] tg3 0000:01:00.1: eth1: dma_rwctrl[769f4000] dma_mask[64-bit]
[21.054276] tg3 0000:01:00.0: eth0: Link is up at 1000 Mbps, full duplex
[21.054284] tg3 0000:01:00.0: eth0: Flow control is off for TX and off for RX

이번에도 증상은 네트워크가 몇 초 동안 제대로 작동하다가 완전히 멈추는 것입니다. a rmmod tg3와 a를 차례로 실행하면 modprobe tg3몇 초 동안 연결이 복원됩니다. 로그에는 특이한 내용이 나타나지 않습니다.

몇 가지 커널 옵션 해결 방법을 시도했습니다. 구체적으로 어느 것이었는지는 기억나지 않지만, acpi=noirq, , 및 을 시도해 본 것은 압니다.acpi=htirqpollnoapic

modinfo, alias표시할 여러 줄 빼기:

filename: /lib/modules/2.6.40.6-0.fc15.i686.PAE/kernel/drivers/net/tg3.ko
firmware:       tigon/tg3_tso5.bin
firmware:       tigon/tg3_tso.bin
firmware:       tigon/tg3.bin
version:        3.119
license:        GPL
description:    Broadcom Tigon3 ethernet driver
author:         David S. Miller ([email protected]) and Jeff Garzik ([email protected])
srcversion:     389C3BA89E4ECF8460A74C0
depends:    
vermagic:       2.6.40.6-0.fc15.i686.PAE SMP mod_unload 686
parm:           tg3_debug:Tigon3 bitmapped debugging message enable value (int)

Fedora는 커널 버전을 2.6.40으로 보고합니다."기존 사용자 공간과의 호환성".

고쳐 쓰다: ifconfig eth0 down이후에 새로운 작업을 수행하여 ifconfig시작하고 적절한 경로를 추가하면 모든 것이 무기한으로 작동합니다. rmmod tg3다음에 a를 수행하면 modprobe tg3몇 초 동안 작동한 다음 다시 중단됩니다. 이제 최소한 해결 방법이 있습니다 /etc/rc.d/init.d network restart. rc.local무엇이 잘못되었는지, 적절한 해결책이 있는지 여전히 궁금합니다.

관련 정보