[PLUG] three e1000s in a box, only two work

Auke Kok sofar at foo-projects.org
Tue Sep 12 19:55:09 UTC 2006


Kurt Sussman wrote:
> I'm working remotely on a box that has three Intel NICs, two on the
> motherboard and one card. It finds all of the NICs, but doesn't load a
> driver for the third. 
> 
>   e1000: 0000:06:00.0: e1000_probe: (PCI Express:2.5Gb/s:Width x4) 00:30:48:30:bc:44
>   divert: allocating divert_blk for eth0
>   e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
>   ACPI: PCI interrupt 0000:06:00.1[B] -> GSI 19 (level, low) -> IRQ 185
>   PCI: Setting latency timer of device 0000:06:00.1 to 64
>   e1000: 0000:06:00.1: e1000_probe: (PCI Express:2.5Gb/s:Width x4) 00:30:48:30:bc:45
>   divert: allocating divert_blk for eth1
>   e1000: eth1: e1000_probe: Intel(R) PRO/1000 Network Connection
>   ACPI: PCI interrupt 0000:0b:02.0[A] -> GSI 16 (level, low) -> IRQ 169
>   e1000: 0000:0b:02.0: e1000_probe: (PCI:33MHz:32-bit) 00:30:48:88:9f:c5
>   divert: allocating divert_blk for eth2
>   e1000: eth2: e1000_probe: Intel(R) PRO/1000 Network Connection
>   Evaluate _OSC Set fails. Status = 0x0005
>   pciehp: Both _OSC and OSHP methods do not exist
>   Evaluate _OSC Set fails. Status = 0x0005
>   pciehp: Both _OSC and OSHP methods do not exist
>   Evaluate _OSC Set fails. Status = 0x0005
>   pciehp: Both _OSC and OSHP methods do not exist
> 
> The _OSC stuff is ACPI hotplug-related. I have not looked too deeply
> into this; the PCI Express NICs load fine, and that's that the hotplug
> is looking for, I think.
> 
> Here's the modprobe.conf:
> 
>   alias scsi_hostadapter adp94xx
>   alias eth0 e1000
>   alias eth1 e1000
>   alias eth2 e1000
> 
> Strangely, the adp94xx and eth0 show up on the same IRQ, and the BIOS
> won't allow the Adaptec card's interrupt to be forced.
> 
>            CPU0       CPU1       CPU2       CPU3
>   0:     209694     229297     221551     219385    IO-APIC-edge  timer
>   1:         68         37        128        218    IO-APIC-edge  i8042
>   8:          0          0          0          0    IO-APIC-edge  rtc
>   9:          0          0          0          0   IO-APIC-level  acpi
>  12:       1105         32         23        325    IO-APIC-edge  i8042
>  14:          6          5       3784       3804    IO-APIC-edge  ide0
> 169:     164121       4130       4095       4051   IO-APIC-level adp94xx, eth0
> 177:         47      10415      11654       1493   IO-APIC-level ehci_hcd, uhci_hcd
> 185:          0          0          0          0   IO-APIC-level uhci_hcd
> 193:          0          0          0          0   IO-APIC-level uhci_hcd
> 209:         12       1537          0          0         PCI-MSI  eth1
> NMI:     879941     879872     879875     879867
> LOC:     879386     879443     879443     879440
> ERR:          0
> MIS:          0
> 
> Oh, yeah, it's a dual dual-core Xeon system, running CentOS 4.4 with the
> -34 kernel. 
> 
> I'm stuck. The e1000 doesn't have an option for setting the IRQs. The
> adp94xx doesn't seem to either, but I haven't been able to find the
> source that corresponds to this CentOS build.
> 
> Any ideas?

Hi,

I'm part of the e1000 development team at Intel here in Hillsboro and maybe I 
can help you out (I should hope so, or course). We have a development list for 
e1000 too - see e1000.sf.net and e1000-devel at lists.sourceforge.net.

Can you include the lspci -vv output for me?

I would suggest disabling pciehp - PCI Express Hotplug support in the kernel 
for now, I've seen many problems with it. Double check that your NIC is 
actually inserted correctly into the slot as well.

Also, you should enable MSI support to resolve the shared interrupt issue with 
the adp94xx, hopefully that will help.

Cheers,

Auke



More information about the PLUG mailing list