Problém se sítí na kernel >2.6.13.x (delší - komplexnější problém)

Jaroslav Prodelal ogee na oldany.cz
Sobota Květen 6 23:22:41 CEST 2006


Dobrý den!

   Mám desku Asus (A8N-SLI Premium) s chipsetem NVIDIA nForce4 SLI a na
ní AMD Athlon(tm) 64 X2 Dual Core Processor 4400+ se 4GB RAM. Deska má 2
síťovky - jednu od Nvidia, druhou Marvell Yukon. Ten Marvell jsem
zakázal a místo něj dal Intel Corporation 82541PI Gigabit Ethernet
Controller (jedná se o 1000GT Desktop).

   Funkční jádro, na kterém to běží je 2.6.13.5. Protože je tam ale
nějaký problém s IOMMU a po nějakém čase po restartu po začne vypisovat
dma_map_sg overflow a pak to jednoho dne vytuhne úplně na kernel panic
nebo to prostě jenom nemůže zapsat na disk s tím, že dma_map_area
overflow, tak jsem chtěl dát jiné jádro, zkoušel jsem (již několikrát)
2.6.14, 2.6.15 i nejposlednější 2.6.16.14.

   Problém ale spočívá v tom, že ta síťovka Intel (dělal to ale i ten
Marvell předtím když tam byl, což je na tom nejpodivnější), která se
používá k propojení P2P s druhým totožným serverem nefunguje. Resp.
nechá se nastavit, ale komunikace není možná - když pustím ping na ten
druhý stroj a dám na něm tcpdump, tak vidím, že občas něco projde, ale
ty pakety bývají buď poškozené a nebo hlavně ten druhý stroj vůbec
nepošle odpověď. Většinou ale neprojde ani paket, takže je to nefunkční.
Co mi nejde do hlavy je hlavně to, že ta jedna síťovka (Nvidia) funguje
- tím je to připojené do inetu - a ta druhou, ať to byl ten Marvell nebo
teď Intel, se kterým nebyly nikdy žádné problémy na jiných strojích,
prostě nechce fungovat.

   Konflikty IRQ a takové podpobné hlouposti jsem již hledal. Jsem úplně
bezradný, vůbec nechápu co s tím a jak z toho ven. :-(

   Posílám výpis z lspci -vv o té Intel kartě.

05:06.0 Ethernet controller: Intel Corporation 82541PI Gigabit Ethernet
Controller (rev 05)
        Subsystem: Intel Corporation: Unknown device 1376
        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 (63750ns min), Cache Line Size 08
        Interrupt: pin A routed to IRQ 18
        Region 0: Memory at db020000 (32-bit, non-prefetchable) [size=128K]
        Region 1: Memory at db000000 (32-bit, non-prefetchable) [size=128K]
        Region 2: I/O ports at a000 [size=64]
        [virtual] Expansion ROM at c2000000 [disabled] [size=128K]
        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=1 PME-
        Capabilities: [e4] PCI-X non-bridge device.
                Command: DPERE- ERO+ RBC=0 OST=0
                Status: Bus=0 Dev=0 Func=0 64bit- 133MHz- SCD- USC-,
DC=simple, DMMRBC=2, DMOST=0, DMCRS=0, RSCEM-


Kousek z strace ping 10.99.0.2 (to je ten druhý stroj s funkčním
2.6.13.5 jádrem)

sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),
sin_addr=inet_addr("10.99.0.2")},
msg_iov(1)=[{"\10\0Hj\350v\0\0\5\23]D\0\0\0\0\235\364\10\0\0\0\0\0\20\21\22\23\24\25\26\27\30\31\32\33\34\35\36\37
!\"#$%&\'()*+,-./01234567", 64}], msg_controllen=0, msg_flags=0}, 0) = 64
recvmsg(3, 0x7fffffb6eed0, 0)           = -1 EAGAIN (Resource
temporarily unavailable)
gettimeofday({1146950406, 588126}, NULL) = 0
gettimeofday({1146950406, 588146}, NULL) = 0
sendmsg(3, {msg_name(16)={sa_family=AF_INET, sin_port=htons(0),
sin_addr=inet_addr("10.99.0.2")},
msg_iov(1)=[{"\10\0rd\350v\0\1\6\23]D\0\0\0\0r\371\10\0\0\0\0\0\20\21\22\23\24\25\26\27\30\31\32\33\34\35\36\37
!\"#$%&\'()*+,-./01234567", 64}], msg_controllen=0, msg_flags=0}, 0) = 64
recvmsg(3, 0x7fffffb6eed0, 0)           = -1 EAGAIN (Resource
temporarily unavailable)
gettimeofday({1146950407, 588147}, NULL) = 0
gettimeofday({1146950407, 588170}, NULL) = 0

... a tak stále ...

a ještě výpis z lspci

00:00.0 Memory controller: nVidia Corporation CK804 Memory Controller
(rev a3)
00:01.0 ISA bridge: nVidia Corporation CK804 ISA Bridge (rev a3)
00:01.1 SMBus: nVidia Corporation CK804 SMBus (rev a2)
00:06.0 IDE interface: nVidia Corporation CK804 IDE (rev f2)
00:07.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller
(rev f3)
00:08.0 IDE interface: nVidia Corporation CK804 Serial ATA Controller
(rev f3)
00:09.0 PCI bridge: nVidia Corporation CK804 PCI Bridge (rev a2)
00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev a3)
00:0b.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0c.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0d.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:0e.0 PCI bridge: nVidia Corporation CK804 PCIE Bridge (rev a3)
00:18.0 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
HyperTransport Technology Configuration
00:18.1 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Address Map
00:18.2 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
DRAM Controller
00:18.3 Host bridge: Advanced Micro Devices [AMD] K8 [Athlon64/Opteron]
Miscellaneous Control
01:00.0 VGA compatible controller: ATI Technologies Inc RV370 5B60
[Radeon X300 (PCIE)]
01:00.1 Display controller: ATI Technologies Inc RV370 [Radeon X300SE]
05:06.0 Ethernet controller: Intel Corporation 82541PI Gigabit Ethernet
Controller (rev 05)


   Budu vděčný za každou radu!

   Předem díky!

Jarda Prodělal





Další informace o konferenci Linux