On Mon, May 13, 2013 at 11:06:17AM +0200, Alexander Gordeev wrote: > Current multiple-MSI implementation does not take into account > actual number of requested MSIs and always rounds that number > to a closest power-of-two value. Yet, a number of MSIs a PCI > device could send (and therefore a number of messages a device > driver could request) may be a lesser power-of-two. As result, > resources allocated for extra MSIs just wasted. > > This update takes advantage of 'msi_desc::nvec' field introduced > with generic MSI code to track number of requested and used MSIs. > As result, resources associated with interrupts are conserved. > Of those resources most noticeable are x86 interrupt vectors. > > The initial version of this fix also consumed on IRTEs, but Jan > noticed that a malfunctioning PCI device might send a message > number it did not claim and thus refer an IRTE it does not own. > To avoid this security hole the old-way approach preserved and > as many IRTEs are reserved as the device could possibly send. > > Signed-off-by: Alexander Gordeev <agordeev@xxxxxxxxxx> This does not look all that bad. Sebastian -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html