Re: [PATCH] [broken?] Add MSI support to e1000

From: Roland Dreier (roland_at_topspin.com)
Date: 08/24/04

  • Next message: Greg KH: "Re: [PATCH] PCI and I2C fixes for 2.6.8"
    To: "Nguyen, Tom L" <tom.l.nguyen@intel.com>
    Date:	Mon, 23 Aug 2004 19:15:49 -0700
    
    

        Tom> Agree. The question is that how many egde-triggered MSI with
        Tom> the same vector are generated by e1000 hardware when its
        Tom> service handler is still running.

    One piece of information that I just noticed is that all of my tests
    were done with CONFIG_E1000_NAPI turned on, so I may be hitting some
    NAPI race condition. Unfortunately I can't try anything on my Dell P4
    system (I don't have remote serial access and I'm not in front of the
    machine, so I can't mess with the network driver).

    I did do a little more testing on the dual Nocona/Lindenhurst system
    that I do have remote serial access to (lspci at the end of this
    email). In my earlier testing I only looked at "ifconfig" and
    "/proc/interrupts" information -- what I didn't notice was that
    networking didn't work at all (and tcpdump shows no packets being
    received). This happens even with NAPI turned off.

    I added a little more debugging to the driver and it seems that it
    reads a bogus RX descriptor (status == 0x63, errors == 0x6f). This
    happens exactly when MSI is turned on, although I have no idea why.

    Unfortunately I'm afraid that I may be running into some Nocona or
    Lindenhurst errata on this system. I'll be able to try my P4 system
    (with 865 chipset) tomorrow.

    One other thing I don't understand independent of any e1000 issues I'm
    running into is what could cause this type of message:

        CPU 0: Machine Check Exception: 0000000000000000
        CPU 0: EIP: 00000000 EFLAGS: 00000000
                eax: 00000000 ebx: 00000000 ecx: 00000000 edx: 00000000
                esi: 00000000 edi: 00000000 ebp: 00000000 esp: 00000000

    The "0000000000000000" above is coming from the IA32_MCG_STATUS MSR,
    and it seems to show a machine check occurring with MCIP ("machine
    check in progress") == 0 -- any idea how this could happen?

    Thanks,
      Roland

    0000:00:00.0 Host bridge: Intel Corp. Server Memory Controller Hub (rev 09)
    0000:00:00.1 ff00: Intel Corp. Memory Controller Hub Error Reporting Register (rev 09)
    0000:00:01.0 System peripheral: Intel Corp. Memory Controller Hub DMA Controller (rev 09)
    0000:00:02.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port A0 (rev 09)
    0000:00:04.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port B0 (rev 09)
    0000:00:05.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port B1 (rev 09)
    0000:00:06.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port C0 (rev 09)
    0000:00:07.0 PCI bridge: Intel Corp. Memory Controller Hub PCI Express Port C1 (rev 09)
    0000:00:08.0 System peripheral: Intel Corp. Memory Controller Hub Extended Configuration Registers (rev 09)
    0000:00:1d.0 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #1 (rev 02)
    0000:00:1d.1 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #2 (rev 02)
    0000:00:1d.2 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB UHCI #3 (rev 02)
    0000:00:1d.7 USB Controller: Intel Corp. 82801EB/ER (ICH5/ICH5R) USB2 EHCI Controller (rev 02)
    0000:00:1e.0 PCI bridge: Intel Corp. 82801 PCI Bridge (rev c2)
    0000:00:1f.0 ISA bridge: Intel Corp. 82801EB/ER (ICH5/ICH5R) LPC Bridge (rev 02)
    0000:00:1f.2 IDE interface: Intel Corp. 82801EB (ICH5) Serial ATA 150 Storage Controller (rev 02)
    0000:00:1f.3 SMBus: Intel Corp. 82801EB/ER (ICH5/ICH5R) SMBus Controller (rev 02)
    0000:01:02.0 VGA compatible controller: ATI Technologies Inc Rage XL (rev 27)
    0000:02:00.0 PCI bridge: Intel Corp. PCI Bridge Hub A (rev 09)
    0000:02:00.1 PIC: Intel Corp. PCI Bridge Hub I/OxAPIC Interrupt Controller A (rev 09)
    0000:02:00.2 PCI bridge: Intel Corp. PCI Bridge Hub B (rev 09)
    0000:02:00.3 PIC: Intel Corp. PCI Bridge Hub I/OxAPIC Interrupt Controller B (rev 09)
    0000:04:01.0 Ethernet controller: Intel Corp. 82545EM Gigabit Ethernet Controller (Copper) (rev 01)
    0000:04:03.0 SCSI storage controller: Adaptec AIC-7902 U320 (rev 03)
    0000:04:03.1 SCSI storage controller: Adaptec AIC-7902 U320 (rev 03)
    0000:07:00.0 InfiniBand: Mellanox Technology: Unknown device 6278 (rev a0)

    detailed lspci of e1000:

    0000:04:01.0 Ethernet controller: Intel Corp. 82545EM Gigabit Ethernet Controller (Copper) (rev 01)
            Subsystem: Intel Corp. PRO/1000 MT Server Adapter
            Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 209
            Memory at fe2c0000 (64-bit, non-prefetchable) [size=128K]
            I/O ports at d480 [size=64]
            Capabilities: [dc] Power Management version 2
            Capabilities: [e4] PCI-X non-bridge device.
            Capabilities: [f0] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable-
    00: 86 80 0f 10 17 01 30 02 01 00 00 02 10 40 00 00
    10: 04 00 2c fe 00 00 00 00 00 00 00 00 00 00 00 00
    20: 81 d4 00 00 00 00 00 00 00 00 00 00 86 80 01 10
    30: 00 00 00 00 dc 00 00 00 00 00 00 00 0b 01 ff 00
    40: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    60: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    70: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    80: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    90: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    a0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    b0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    c0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    d0: 00 00 00 00 00 00 00 00 00 00 00 00 01 e4 22 00
    e0: 00 00 00 00 07 f0 02 00 08 04 43 04 00 00 00 00
    f0: 05 00 80 00 04 10 e0 fe 00 00 00 00 32 40 00 00

    -
    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/


  • Next message: Greg KH: "Re: [PATCH] PCI and I2C fixes for 2.6.8"

    Relevant Pages

    • SCSI disk not available in 5.2.1-RELEASE while 4.10-RELEASE can use it
      ... FreeBSD 5.2.1-RELEASE doesnt see scsi disks, ... pci0: <PCI bus> on pcib0 ... Intel Corp. e7500 DRAM Controller Error Reporting ... Intel Corp. e7500 HI_B Virtual PCI Bridge ...
      (freebsd-questions)
    • [PATCH 2.6.15-rc3-mm1] PCI Quirk: 1K I/O Space Granularity on Intel P64H2
      ... I've implemented a quirk to take advantage of the 1KB I/O space ... granularity option on the Intel P64H2 PCI Bridge. ...
      (Linux-Kernel)
    • Re: motherboard
      ... so drivers for the Intel 810 chipset. ... the Graphics and Memory Controller Hub ...
      (comp.sys.ibm.pc.hardware.misc)
    • Re: motherboard
      ... so drivers for the Intel 810 chipset. ... the Graphics and Memory Controller Hub ...
      (comp.sys.ibm.pc.hardware.misc)
    • Re: 2.6.9-rc1-mm5
      ... 0000:00:08.0 System peripheral: Intel Corp. Memory Controller Hub Extended Configuration Registers ... 0000:01:02.0 Ethernet controller: Intel Corp. 82541GI Gigabit Ethernet Controller ... send the line "unsubscribe linux-kernel" in ...
      (Linux-Kernel)