Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 27 Feb 2008 22:11:44 +0100
From:      Holger Kipp <hk@intserv.int1.b.intern>
To:        Jack Vogel <jfvogel@gmail.com>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: [solved/workaround?] Re: em very slow, shared irq... on 6.3p8
Message-ID:  <20080227211144.GB28902@intserv.int1.b.intern>
In-Reply-To: <2a41acea0802271216m2796f90fnb7650bc06c86ed25@mail.gmail.com>
References:  <20080227104942.GA14530@intserv.int1.b.intern> <200802271452.m1REqJ6H059687@lava.sentex.ca> <20080227195058.GA27997@intserv.int1.b.intern> <2a41acea0802271216m2796f90fnb7650bc06c86ed25@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Feb 27, 2008 at 12:16:27PM -0800, Jack Vogel wrote:
> 
> Hmmm, something is really broken here that POLL just is just bypassing,
> what was the adapter type exactly (pciconf -l). Sorry, but I must have
> missed this email earlier.

Problem is with em0-em13 that many share an IRQ 16/17, and because I was using
6.2-p8 and therefore did not have MSI enabled/available. Polling was also not
compiled into the kernel.

Polling alone will give times between 0.2 and 1.3 ms (with HZ=1000), and
MSI alone (after activated during boot within loader.conf) will give
best results (around 0.4 to 0.5 ms for a ping through firewall and back
across two lans). This was then with 6.3-p1

Still, 6.3-p1 without msi and polling is still very slow in handling IRQs from
the em-nics.

I still don't know exactly why this took up to 1.5 seconds (sometimes even
more) without MSI or POLLING. Please see my previous emails for dmesg.

pciconf -l gives:

em0@pci4:4:0:   class=0x020000 card=0x11998086 chip=0x10b58086 rev=0x03 hdr=0x00
em1@pci4:4:1:   class=0x020000 card=0x11998086 chip=0x10b58086 rev=0x03 hdr=0x00
em2@pci4:6:0:   class=0x020000 card=0x11998086 chip=0x10b58086 rev=0x03 hdr=0x00
em3@pci4:6:1:   class=0x020000 card=0x11998086 chip=0x10b58086 rev=0x03 hdr=0x00
em4@pci12:0:0:  class=0x020000 card=0x10a48086 chip=0x10a48086 rev=0x06 hdr=0x00
em5@pci12:0:1:  class=0x020000 card=0x10a48086 chip=0x10a48086 rev=0x06 hdr=0x00
em6@pci13:0:0:  class=0x020000 card=0x10a48086 chip=0x10a48086 rev=0x06 hdr=0x00
em7@pci13:0:1:  class=0x020000 card=0x10a48086 chip=0x10a48086 rev=0x06 hdr=0x00
em8@pci16:0:0:  class=0x020000 card=0x10a48086 chip=0x10a48086 rev=0x06 hdr=0x00
em9@pci16:0:1:  class=0x020000 card=0x10a48086 chip=0x10a48086 rev=0x06 hdr=0x00
em10@pci17:0:0: class=0x020000 card=0x10a48086 chip=0x10a48086 rev=0x06 hdr=0x00
em11@pci17:0:1: class=0x020000 card=0x10a48086 chip=0x10a48086 rev=0x06 hdr=0x00
em12@pci18:0:0: class=0x020000 card=0x108c15d9 chip=0x108c8086 rev=0x03 hdr=0x00
em13@pci19:0:0: class=0x020000 card=0x109a15d9 chip=0x109a8086 rev=0x00 hdr=0x00

We have one quad PCI-X 64bit card (the first four) and two quad PCI-Express cards. 
The last two devices are on-board ports.

    device     = '82546GB PRO/1000 GT Quad Port Server Adapter'
    device     = '82546GB PRO/1000 GT Quad Port Server Adapter'
    device     = '82546GB PRO/1000 GT Quad Port Server Adapter'
    device     = '82546GB PRO/1000 GT Quad Port Server Adapter'
    device     = '82571EB Gigabit Ethernet Controller'
    device     = '82571EB Gigabit Ethernet Controller'
    device     = '82571EB Gigabit Ethernet Controller'
    device     = '82571EB Gigabit Ethernet Controller'
    device     = '82571EB Gigabit Ethernet Controller'
    device     = '82571EB Gigabit Ethernet Controller'
    device     = '82571EB Gigabit Ethernet Controller'
    device     = '82571EB Gigabit Ethernet Controller'
    device     = '82573E Intel Corporation 82573E Gigabit Ethernet Controller (Copper)'
    device     = '82573L Intel PRO/1000 PL Network Adaptor'

Is this helpful? Please let me know if you need anything else. 

Best regards,
Holger Kipp



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080227211144.GB28902>