Re: Strange IRQ number

From: Nikolay Pavlov <qpadla_at_gmail.com>
Date: Fri, 7 Dec 2007 21:46:37 +0200
On Friday 07 December 2007 21:26:42 Erik Trulsson wrote:
> On Fri, Dec 07, 2007 at 09:13:57PM +0200, Nikolay Pavlov wrote:
> > I see some strange IRQ number for my em0 card on BETA4:
> > root_at_cassini:~# vmstat -i
> > interrupt                          total       rate
> > irq1: atkbd0                           6          0
> > irq6: fdc0                             1          0
> > irq14: ata0                       184947         16
> > irq15: ata1                       184946         16
> > cpu0: timer                     22110598       1999
> > irq256: em0                      6945039        628
> > ^^^^^^^^^^^^^^^^
> > cpu1: timer                     22110396       1999
> > Total                           51535933       4661
> >
> > On 6.2 it was shared with uhci. Now all uhci controllers gone from the
> > vmstat but not from the system:
>
> 'vmstat -i' only shows those interrupts that have generated at least one
> interrupt.  Use 'vmstat -ia' to see all the interrupts (I suspect that
> you will find the uhci* devices there.)
>
> > root_at_cassini:~# usbdevs
> > addr 1: UHCI root hub, Intel
> > addr 1: UHCI root hub, Intel
> > addr 1: UHCI root hub, Intel
> > addr 1: UHCI root hub, Intel
> > addr 1: EHCI root hub, Intel
> >
> > root_at_cassini:~# dmesg | grep em0
> > em0: <Intel(R) PRO/1000 Network Connection Version - 6.7.3> port
> > 0x4000-0x401f mem 0xd0100000-0xd011ffff irq 16 at device 0.0 on pci6
> > em0: Using MSI interrupt
>
>    ^^^^^^^^^^^^^^^^^^^^^^
>
> This is the magic information.  On 7.x MSI/MSI-X interrupts are enabled
> by default (which is not the case on 6.x).
> MSI/MSI-X is a new interrupt delivery mechanism that can be used by all
> PCI-E devices (although not all device drivers in FreeBSD take
> advantage of this yet) and some PCI-X devices, that essentially assigns
> a separate interrupt for each device - thus no need for sharing
> interrupts.
>
> > em0: Ethernet address: 00:30:48:91:c0:90
> > em0: [FILTER]
> >
> > The entire system work ok.
>
> As expected. What you see is simply the em0 NIC (apparently a PCI-E
> device) using MSI instead of the old interrupt method.
> FreeBSD assigns such devices a "virtual" interrupt number starting at
> 256.
>
>
> Short version:  It is not a bug, it is a feature. :-)

Yes you are right Erik. Thanks for a good explanation. :)

-- 
======================================================================  
- Best regards, Nikolay Pavlov. <<<-----------------------------------    
======================================================================  


Received on Fri Dec 07 2007 - 18:46:37 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:23 UTC