Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Kernel Options: To use MSI-X or not?

78 views
Skip to first unread message

Justin Piszcz

unread,
Nov 4, 2009, 12:00:02 PM11/4/09
to
Hello,

I was curious whether its best to use MSI-X when the driver supports it or
not?

Example, 3ware cards/Intel Audio Drivers you can use MSI-X instead of
having several devices use/share an interrupt.

What are the pros/cons to using MSI-X vs. having devices share an IRQ?

Justin.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majo...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

Robert Hancock

unread,
Nov 5, 2009, 6:40:38 AM11/5/09
to
On 11/04/2009 10:53 AM, Justin Piszcz wrote:
> Hello,
>
> I was curious whether its best to use MSI-X when the driver supports it
> or not?
>
> Example, 3ware cards/Intel Audio Drivers you can use MSI-X instead of
> having several devices use/share an interrupt.
>
> What are the pros/cons to using MSI-X vs. having devices share an IRQ?

Normally using MSI/MSI-X is always better (or at least no worse),
assuming it works properly on the system and on the device.. Hopefully
by this point we've fixed most or all the system-related problems or
forced MSI off on platforms where it can't work properly.

Valdis.K...@vt.edu

unread,
Nov 5, 2009, 6:41:57 AM11/5/09
to
On Wed, 04 Nov 2009 11:53:18 EST, Justin Piszcz said:

> Example, 3ware cards/Intel Audio Drivers you can use MSI-X instead of
> having several devices use/share an interrupt.
>
> What are the pros/cons to using MSI-X vs. having devices share an IRQ?

Cons: Sometimes, you'll find a device that claims to support MSI but in fact is
to some extent borked...

I'm the proud owner of a Dell Latitude D820, which includes this PCI:

00:1b.0 Audio device: Intel Corporation 82801G (ICH7 Family) High Definition Audio Controller (rev 01)
Subsystem: Dell Device 01cc
Flags: bus master, fast devsel, latency 0, IRQ 30
Memory at efffc000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 2
Capabilities: [60] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [70] Express Root Complex Integrated Endpoint, MSI 00
Capabilities: [100] Virtual Channel <?>
Capabilities: [130] Root Complex Link <?>
Kernel driver in use: HDA Intel

However, actually trying to enable MSI gets me this at some pseudo-random
time after booting (one for each of 7 boots):

[ 4.519264] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00df0900
[ 22.788015] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x008f0c00
[ 4.719263] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00df0900
[ 12.497263] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00df0900
[ 815.350265] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00df0900
[ 595.171267] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00171700
[ 4.968263] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00df0900

(Am slightly mystified about the resets at 4 and 12 seconds - at that point,
we're not up far enough to actually try to use the audio. I suspect udev trying
to initialize the card - except sometimes it works and runs just fine with
MSI for quite some time:

[14267.701267] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00df0900
[12841.892050] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00df0900
[10647.783274] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x001f1500
[15091.102034] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00171700
[20085.955293] ALSA sound/pci/hda/hda_intel.c:683: No response from codec, disabling MSI: last cmd=0x00df0700


Robert Hancock

unread,
Nov 5, 2009, 6:42:03 AM11/5/09
to

This may not be an actual MSI problem (in fact I'd say it's probably
not). Currently hda_intel disables MSI after any codec response timeout,
so it could be it would have worked if it retried while still using MSI.
I believe Takashi was going to change the driver to be less sensitive
about this.

0 new messages