* [PATCH 0/4]: Resolve MSI vs. INTX_DISABLE quirks.
@ 2007-10-24 2:51 David Miller
2007-10-24 4:58 ` Daniel Barkalow
2007-10-25 5:37 ` Jeff Garzik
0 siblings, 2 replies; 5+ messages in thread
From: David Miller @ 2007-10-24 2:51 UTC (permalink / raw)
To: linux-kernel
Cc: jeff, barkalow, linas, chunhao.huang, gregkh, htejun,
brice.goglin, david.gaarenstroom, linux-pci, shane.huang,
linux-ide, brice, mchan
The forthcoming patches are also available from:
kernel.org:/pub/scm/linux/kernel/git/davem/msiquirk-2.6.git
and clean up the handling of the common quirk wherein setting
INTX_DISABLE will mistakedly disable MSI generation for some
devices.
For devices without that problem, we want to keep the pci_intx() calls
in drivers/pci/msi.c because those help protect against devices
with the opposite problem. Such devices always generate INTX
interrupts even when MSI is enabled, unless INTX_DISABLE is set.
Michael, please pay special attention to patch #3. I think I
picked the correct PCI device IDs to match for the quirk
(5714* and 5780*) but it's possible we might need more elaborate
checks here. It at least worked properly for the chips in my
Niagara system.
In addition to the Tigon3 cases, I added quirk entries for the
SB700/800 SATA chips and the IXP SB400 USB controllers.
Signed-off-by: David S. Miller <davem@davemloft.net>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 0/4]: Resolve MSI vs. INTX_DISABLE quirks.
2007-10-24 2:51 [PATCH 0/4]: Resolve MSI vs. INTX_DISABLE quirks David Miller
@ 2007-10-24 4:58 ` Daniel Barkalow
2007-10-24 5:06 ` David Miller
2007-10-25 5:37 ` Jeff Garzik
1 sibling, 1 reply; 5+ messages in thread
From: Daniel Barkalow @ 2007-10-24 4:58 UTC (permalink / raw)
To: David Miller
Cc: linux-kernel, jeff, linas, chunhao.huang, gregkh, htejun,
brice.goglin, david.gaarenstroom, linux-pci, shane.huang,
linux-ide, brice, mchan
On Tue, 23 Oct 2007, David Miller wrote:
>
> The forthcoming patches are also available from:
>
> kernel.org:/pub/scm/linux/kernel/git/davem/msiquirk-2.6.git
>
> and clean up the handling of the common quirk wherein setting
> INTX_DISABLE will mistakedly disable MSI generation for some
> devices.
>
> For devices without that problem, we want to keep the pci_intx() calls
> in drivers/pci/msi.c because those help protect against devices
> with the opposite problem. Such devices always generate INTX
> interrupts even when MSI is enabled, unless INTX_DISABLE is set.
>
> Michael, please pay special attention to patch #3. I think I
> picked the correct PCI device IDs to match for the quirk
> (5714* and 5780*) but it's possible we might need more elaborate
> checks here. It at least worked properly for the chips in my
> Niagara system.
I'm not sure all of the pci_intx() calls in msi.c should be skipped when
the quirk applies; I think some of them might be there so that the legacy
interrupt won't be delivered while MSI is turned off (since the handler
isn't listening for the legacy interrupts). I'd guess this would cause
people to have their MSI-capable device kill their non-MSI-capable device
when they restore their laptop (and the shared interrupt fires and gets
stuck at just the wrong time). No idea if this is a real concern, but I'm
pretty sure that not all of those calls are recent.
> In addition to the Tigon3 cases, I added quirk entries for the
> SB700/800 SATA chips and the IXP SB400 USB controllers.
There's a couple of ATA drivers that look like they might be trying to
work around the same bug, but it's a bit hard to tell. It might be good to
have them use the quirk (or set the flag) because it's cleaner.
-Daniel
*This .sig left intentionally blank*
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 0/4]: Resolve MSI vs. INTX_DISABLE quirks.
2007-10-24 4:58 ` Daniel Barkalow
@ 2007-10-24 5:06 ` David Miller
2007-10-24 16:52 ` Daniel Barkalow
0 siblings, 1 reply; 5+ messages in thread
From: David Miller @ 2007-10-24 5:06 UTC (permalink / raw)
To: barkalow
Cc: linux-kernel, jeff, linas, chunhao.huang, gregkh, htejun,
brice.goglin, david.gaarenstroom, linux-pci, shane.huang,
linux-ide, brice, mchan
From: Daniel Barkalow <barkalow@iabervon.org>
Date: Wed, 24 Oct 2007 00:58:45 -0400 (EDT)
> I'm not sure all of the pci_intx() calls in msi.c should be skipped when
> the quirk applies; I think some of them might be there so that the legacy
> interrupt won't be delivered while MSI is turned off (since the handler
> isn't listening for the legacy interrupts). I'd guess this would cause
> people to have their MSI-capable device kill their non-MSI-capable device
> when they restore their laptop (and the shared interrupt fires and gets
> stuck at just the wrong time). No idea if this is a real concern, but I'm
> pretty sure that not all of those calls are recent.
I don't think it's a real concern.
> There's a couple of ATA drivers that look like they might be trying to
> work around the same bug, but it's a bit hard to tell. It might be good to
> have them use the quirk (or set the flag) because it's cleaner.
I noticed these cases as well, and I would hope that Jeff would help
out here using the infrastructure my patches created.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 0/4]: Resolve MSI vs. INTX_DISABLE quirks.
2007-10-24 5:06 ` David Miller
@ 2007-10-24 16:52 ` Daniel Barkalow
0 siblings, 0 replies; 5+ messages in thread
From: Daniel Barkalow @ 2007-10-24 16:52 UTC (permalink / raw)
To: David Miller
Cc: linux-kernel, jeff, linas, chunhao.huang, gregkh, htejun,
brice.goglin, david.gaarenstroom, linux-pci, shane.huang,
linux-ide, brice, mchan
On Tue, 23 Oct 2007, David Miller wrote:
> From: Daniel Barkalow <barkalow@iabervon.org>
> Date: Wed, 24 Oct 2007 00:58:45 -0400 (EDT)
>
> > I'm not sure all of the pci_intx() calls in msi.c should be skipped when
> > the quirk applies; I think some of them might be there so that the legacy
> > interrupt won't be delivered while MSI is turned off (since the handler
> > isn't listening for the legacy interrupts). I'd guess this would cause
> > people to have their MSI-capable device kill their non-MSI-capable device
> > when they restore their laptop (and the shared interrupt fires and gets
> > stuck at just the wrong time). No idea if this is a real concern, but I'm
> > pretty sure that not all of those calls are recent.
>
> I don't think it's a real concern.
Okay, good. As long as someone more clueful than me has thought about it,
because I couldn't tell off hand.
> > There's a couple of ATA drivers that look like they might be trying to
> > work around the same bug, but it's a bit hard to tell. It might be good to
> > have them use the quirk (or set the flag) because it's cleaner.
>
> I noticed these cases as well, and I would hope that Jeff would help
> out here using the infrastructure my patches created.
Or coordinate with someone with the quirky hardware, yes.
-Daniel
*This .sig left intentionally blank*
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 0/4]: Resolve MSI vs. INTX_DISABLE quirks.
2007-10-24 2:51 [PATCH 0/4]: Resolve MSI vs. INTX_DISABLE quirks David Miller
2007-10-24 4:58 ` Daniel Barkalow
@ 2007-10-25 5:37 ` Jeff Garzik
1 sibling, 0 replies; 5+ messages in thread
From: Jeff Garzik @ 2007-10-25 5:37 UTC (permalink / raw)
To: David Miller
Cc: linux-kernel, barkalow, linas, chunhao.huang, gregkh, htejun,
brice.goglin, david.gaarenstroom, linux-pci, shane.huang,
linux-ide, brice, mchan
David Miller wrote:
> The forthcoming patches are also available from:
>
> kernel.org:/pub/scm/linux/kernel/git/davem/msiquirk-2.6.git
>
> and clean up the handling of the common quirk wherein setting
> INTX_DISABLE will mistakedly disable MSI generation for some
> devices.
>
> For devices without that problem, we want to keep the pci_intx() calls
> in drivers/pci/msi.c because those help protect against devices
> with the opposite problem. Such devices always generate INTX
> interrupts even when MSI is enabled, unless INTX_DISABLE is set.
>
> Michael, please pay special attention to patch #3. I think I
> picked the correct PCI device IDs to match for the quirk
> (5714* and 5780*) but it's possible we might need more elaborate
> checks here. It at least worked properly for the chips in my
> Niagara system.
>
> In addition to the Tigon3 cases, I added quirk entries for the
> SB700/800 SATA chips and the IXP SB400 USB controllers.
>
> Signed-off-by: David S. Miller <davem@davemloft.net>
I'm happy with this patch series. A quirk is better than a
sledgehammer, and MSI-mode SATA is better than INTX-mode SATA :)
Jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-10-25 5:37 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-24 2:51 [PATCH 0/4]: Resolve MSI vs. INTX_DISABLE quirks David Miller
2007-10-24 4:58 ` Daniel Barkalow
2007-10-24 5:06 ` David Miller
2007-10-24 16:52 ` Daniel Barkalow
2007-10-25 5:37 ` Jeff Garzik
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).