svn commit: r188381 - head/sys/dev/re

Pyun YongHyeon pyunyh at gmail.com
Mon Feb 9 16:47:57 PST 2009


On Mon, Feb 09, 2009 at 06:10:56PM +0100, Gary Jennejohn wrote:
> On Mon, 9 Feb 2009 04:59:13 +0000 (UTC)
> Pyun YongHyeon <yongari at FreeBSD.org> wrote:
> 
> > Author: yongari
> > Date: Mon Feb  9 04:59:13 2009
> > New Revision: 188381
> > URL: http://svn.freebsd.org/changeset/base/188381
> > 
> > Log:
> >   Reclaim transmitted frames in re_tick(). This is for PCIe
> >   controllers that lose Tx completion interrupts under certain
> >   conditions. With this change it's safe to use MSI on PCIe
> >   controllers so enable MSI on these controllers.
> > 
> > Modified:
> >   head/sys/dev/re/if_re.c
> > 
> 
> This does not work with my re(4).  When I allow MSI it never transmits.
> I noticed this while booting when the sendmail startup hung.  A test
> with ping(8) showed that there was no output (or maybe no input, hard
> to tell with ping).
> 
> Here dmesg output when it fails:
> re0: <RealTek 8168/8168B/8168C/8168CP/8168D/8111B/8111C/8111CP PCIe Gigabit Ethernet> port 0xde00-0xdeff mem 0xfdaff000-0xfdafffff,0xfdae0000-0xfdaeffff irq 18 at device 0.0 on pci2
> re0: Using 2 MSI messages
> re0: Chip rev. 0x3c000000
> re0: MAC rev. 0x00400000
> re0: Ethernet address: 00:1f:d0:8f:5a:43
> re0: [FILTER]
> re0: [FILTER]
> re0: link state changed to UP
> 
> Here dmesg output when it succeeds:
> re0: <RealTek 8168/8168B/8168C/8168CP/8168D/8111B/8111C/8111CP PCIe Gigabit Ethernet> port 0xde00-0xdeff mem 0xfdaff000-0xfdafffff,0xfdae0000-0xfdaeffff irq 18 at device 0.0 on pci2
> re0: turning off MSI enable bit.
> re0: Chip rev. 0x3c000000
> re0: MAC rev. 0x00400000
> re0: Ethernet address: 00:1f:d0:8f:5a:43
> re0: [FILTER]
> re0: link state changed to UP
> 
> And here pciconf output:
> re0 at pci0:2:0:0: class=0x020000 card=0xe0001458 chip=0x816810ec rev=0x02 hdr=0x00
>     vendor     = 'Realtek Semiconductor'
>     device     = 'RTL8168/8111 PCI-E Gigabit Ethernet NIC'
>     class      = network
>     subclass   = ethernet
> 

It seems that broken controllers have two MSI messages. Instead of
reverting the change, how about attached patch?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: re.msi.diff
Type: text/x-diff
Size: 897 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/svn-src-head/attachments/20090210/5239165c/re.msi.bin


More information about the svn-src-head mailing list