lkml.org 
[lkml]   [2001]   [Jul]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectOnce again an eth0: transmit timeout problem, with 8319too
    Hi,

    I originally posted a similar bug report under
    http://sourceforge.net/tracker/
    index.php?func=detail&aid=440357&group_id=3242&atid=103242

    but as I guess that this list is a much more appropriate place for
    it, here it goes, slightly modified:

    ---cut---
    Hello,

    I've tried reading LKML archives etc for this problem
    and the advice usually is "fixed in the latest kernel
    versions". So I've tried 2.2.18 (not with the 8139too
    driver but Don Becker's, which is IIRC actually known
    to have this bug) and the 8139too driver with 2.4.0
    upwards to 2.4.6 and 2.4.6ac2.

    After bootup, if I do something network-wise which takes up more
    bandwidth than ICQ and IRC, soon I get in the syslog:

    NETDEV WATCHDOG: eth0: transmit timed out
    eth0: Tx queue start entry 4346 dirty entry 4342.
    eth0: Tx descriptor 0 is 00002000.
    eth0: Tx descriptor 1 is 00002000.
    eth0: Tx descriptor 2 is 00002000. (queue head)
    eth0: Tx descriptor 3 is 00002000.
    eth0: Setting half-duplex based on auto-negotiated
    partner ability 0000.

    and this makes the network stop for a few seconds
    before the Watchdog resets the ethernet card and makes
    it work again, dropping my download throughput from
    approx. 400 kB/s to 10 kB/s. Ugh.

    I've also tried just setting the #define RTL8139_DEBUG
    1, at least in the more up-to-date 0.9.18 (without the pre4) from
    Jeff Garzik's Sourceforge project site, but this gave very strange
    results (like the driver displaying it had 100Mpbs and Full Duplex,
    while the card's connected to a normal 10 Mbit hub (which I guess
    can
    only handle half-duplex!?)

    OK, without having enabled debug info I'll also attach
    the lspci -vvv and the rtl8139diag output as indicated in the
    8139too.c
    source file.

    If you need further information, please do Cc: me as I'm not on this
    list,
    and while I'll check the archive answers will be faster with a Cc.
    I'll answer almost everything (because I tried switching
    motherboards, processors, a new RTL8319C, network
    cables... and I always got the same error. Argh. It
    also happened on my old SuSE distro as it does now on
    Debian unstable. It's probably some kind of "user too dumb" error
    :-(

    So, now the output of lspci -vvv:

    wh36-b407:/home/mcornils/8139too-0.9.18# lspci -vvv
    00:00.0 Host bridge: VIA Technologies, Inc.
    VT8363/8365
    [KT133/KM133] (rev 03)
    Subsystem: Elitegroup Computer Systems: Unknown
    device 0987
    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
    Region 0: Memory at d0000000 (32-bit,
    prefetchable) [size=64M]
    Capabilities: [a0] AGP version 2.0
    Status: RQ=31 SBA+ 64bit- FW-
    Rate=x1,x2
    Command: RQ=0 SBA- AGP- 64bit- FW-
    Rate=<none>
    Capabilities: [c0] 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-

    00:01.0 PCI bridge: VIA Technologies, Inc.
    VT8363/8365
    [KT133/KM133 AGP] (prog-if 00 [Normal decode])
    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
    Bus: primary=00, secondary=01, subordinate=01,
    sec-latency=0
    I/O behind bridge: 0000f000-00000fff
    Memory behind bridge: fff00000-000fffff
    Prefetchable memory behind bridge:
    fff00000-000fffff
    BridgeCtl: Parity- SERR- NoISA+ VGA- MAbort-
    >Reset- FastB2B-
    Capabilities: [80] 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-

    00:07.0 ISA bridge: VIA Technologies, Inc. VT82C686
    [Apollo Super South] (rev 40)
    Subsystem: VIA Technologies, Inc. VT82C686/A
    PCI to ISA Bridge
    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
    Capabilities: [c0] 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-

    00:07.1 IDE interface: VIA Technologies, Inc. Bus
    Master IDE (rev 06) (prog-if 8a [Master SecP PriP])
    Subsystem: VIA Technologies, Inc. Bus Master
    IDE
    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
    Region 4: I/O ports at c000 [size=16]
    Capabilities: [c0] 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-

    00:07.4 Host bridge: VIA Technologies, Inc.
    VT82C686
    [Apollo Super ACPI] (rev 40)
    Subsystem: Elitegroup Computer Systems: Unknown
    device 0987
    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 ? routed to IRQ 5
    Capabilities: [68] 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-

    00:07.5 Multimedia audio controller: VIA
    Technologies,
    Inc. AC97 Audio Controller (rev 50)
    Subsystem: Elitegroup Computer Systems: Unknown
    device 0987
    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 C routed to IRQ 10
    Region 0: I/O ports at cc00 [size=256]
    Region 1: I/O ports at d000 [size=4]
    Region 2: I/O ports at d400 [size=4]
    Capabilities: [c0] 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-

    00:0a.0 Ethernet controller: Realtek Semiconductor
    Co.,
    Ltd. RTL-8139 (rev 10)
    Subsystem: Realtek Semiconductor Co., Ltd.
    RT8139
    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 (8000ns min, 16000ns max)
    Interrupt: pin A routed to IRQ 11
    Region 0: I/O ports at dc00 [size=256]
    Region 1: Memory at d6001000 (32-bit,
    non-prefetchable) [size=256]
    Capabilities: [50] Power Management version 2
    Flags: PMEClk- DSI- D1+ D2+
    AuxCurrent=375mA PME(D0-,D1+,D2+,D3hot+,D3cold+)
    Status: D0 PME-Enable- DSel=0 DScale=0
    PME-

    00:0b.0 VGA compatible controller: ATI Technologies
    Inc
    3D Rage LT Pro (rev dc) (prog-if 00 [VGA])
    Subsystem: ATI Technologies Inc: Unknown device
    0044
    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), cache line size 08
    Interrupt: pin A routed to IRQ 10
    Region 0: Memory at d4000000 (32-bit,
    non-prefetchable) [size=16M]
    Region 1: I/O ports at e000 [size=256]
    Region 2: Memory at d6000000 (32-bit,
    non-prefetchable) [size=4K]
    Expansion ROM at <unassigned> [disabled]
    [size=128K]
    Capabilities: [5c] Power Management version 1
    Flags: PMEClk- DSI- D1+ D2+
    AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
    Status: D0 PME-Enable- DSel=0 DScale=0
    PME-

    00:0c.0 Multimedia video controller: Brooktree
    Corporation Bt878 (rev 02)
    Subsystem: Hauppauge computer works Inc.
    WinTV/GO
    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 (4000ns min, 10000ns max)
    Interrupt: pin A routed to IRQ 12
    Region 0: Memory at d6002000 (32-bit,
    prefetchable) [size=4K]

    00:0c.1 Multimedia controller: Brooktree
    Corporation
    Bt878 (rev 02)
    Subsystem: Hauppauge computer works Inc.
    WinTV/GO
    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 (1000ns min, 63750ns max)
    Interrupt: pin A routed to IRQ 12
    Region 0: Memory at d6003000 (32-bit,
    prefetchable) [size=4K]

    and now the rtl-8319-diag-output (unfortunately it was
    impossible to time this so that the output is from the
    exact moment where it resets the card):

    rtl8139-diag.c:v2.01 1/8/2001 Donald Becker
    (becker@scyld.com)
    http://www.scyld.com/diag/index.html
    Index #1: Found a RealTek RTL8139 adapter at
    0xdc00.
    RealTek chip registers at 0xdc00
    0x000: 767de000 0000f63d 80000000 00000000 080825ea
    9708a5ea 9108a5ea 9408a5ea
    0x020: 0f52c000 0f52c600 0f52cc00 0f52d200 0de50000
    0d0a0000 45784568 2000c07f
    0x040: 78000600 0e00f78e 30482234 00000000 004d10c6
    00000000 0080c108 00100000
    0x060: 1000e00f 05e1782d 00000000 00000000 00000005
    000007c0 58fab388 a438d843.
    No interrupt sources are pending.
    (null) indication.
    The chip configuration is 0x10 0x4d, MII
    full-duplex
    mode.
    EEPROM size test returned 6, 0x204a4 / 0x2.
    Parsing the EEPROM of a RealTek chip:
    PCI IDs -- Vendor 0x10ec, Device 0x8139, Subsystem
    0x10ec.
    PCI timer settings -- minimum grant 32, maximum
    latency 64.
    General purpose pins -- direction 0xe1 value 0x10.
    Station Address 00:E0:7D:76:3D:F6.
    Configuration register 0/1 -- 0x4d / 0xc2.
    EEPROM active region checksum is 0a83.
    EEPROM contents:
    8129 10ec 8139 10ec 8139 4020 e110 e000
    767d f63d 4d10 f7c2 8001 b388 58fa 0708
    d843 a438 d843 a438 d843 a438 d843 a438
    0000 0000 0000 0000 0000 0000 0000 0000
    0000 0000 0000 0000 0000 0000 0000 0000
    0000 0000 0000 0000 0000 0000 0000 0000
    0000 0000 0000 0000 0000 0000 0000 0000
    0000 0000 0000 0000 0000 0000 0000 0000
    The word-wide EEPROM checksum is 0xdda6.

    BTW, why it says full-duplex mode above, I don't know. Especially
    since
    the output from the mii-diag program says differently:

    wh36-b407:/home/mcornils/8139too-0.9.18# ./mii-diag.o
    Using the default interface 'eth0'.
    Basic registers of MII PHY #32: 0000 0000 0000 0000 0000 0000 0000
    0000.
    Basic mode control register 0x0000: Auto-negotiation disabled, with
    Speed fixed at 10 mbps, half-duplex.
    Basic mode status register 0x0000 ... 0000.
    Link status: not established.
    Link partner information information is not exchanged when in fixed
    speed mode.wh36-b407:/home/mcornils/8139too-0.9.18#

    It would be so cool if you could help me out here :-)

    -Malte #8-)
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2005-03-22 13:17    [W:0.040 / U:31.352 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site