Re: pci_enable_msi() for everyone?

From: David S. Miller
Date: Mon Jun 06 2005 - 18:39:50 EST


From: Greg KH <gregkh@xxxxxxx>
Date: Mon, 6 Jun 2005 15:55:49 -0700

> Why would it matter? The driver shouldn't care if the interrupts come
> in via the standard interrupt way, or through MSI, right? And if it
> does, it could always use a function like the one I proposed to set up a
> different irq handler.

It matters because MSI totally changes the DMA vs. interrupt delivery
guarentees.

With MSI, you can be assured that any DMA sent from the device, before
the interrupt, has reached global visibility before the MSI arrives at
the cpu. There is no such guarentee with pre-MSI interrupt delivery.

Drivers optimize this, so they have to know if MSI is being used or
not.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/