two pci_alloc_irq_vectors improvements

From: Christoph Hellwig
Date: Thu Aug 11 2016 - 10:12:16 EST


Hi Bjorn, hi Alex,

below are two patches I'd love to see in 4.8 to improve the
pci_alloc_irq_vectors interface. I've realized we need these while
starting a mass conversion of the MSI-X users to the new interface,
and getting it into 4.8 before users show up should make life a lot
easier.

The positive flags things comes out of the fact that a lot of driver
want MSI-X only without any fallback, or some elaborate differences
for the different interrupt schemes. For example while most modern
devices use one MSI-X vector per queue and scale nicely from the
MSI to the MSI-X scheme many older devices use a MSI-X vector per
functionality in the ISR, so they might wan to allocate them
differently.

The second one ensures the legacy interrupt line is actually enabled
before using it, because some devices like MSI-X might actually have
it disable by default.