Re: [PATCH 3/4] AHCI: Conserve interrupts withpci_enable_msi_block_part() interface

From: Tejun Heo
Date: Tue Sep 03 2013 - 10:18:34 EST


On Mon, Sep 02, 2013 at 11:00:28AM +0200, Alexander Gordeev wrote:
> + if (hpriv->flags & AHCI_HFLAG_NO_MSI)
> + goto intx;
> +
> + rc = pci_enable_msi_block_part(pdev, n_ports, AHCI_MAX_PORTS);
> + if (!rc)
> + return AHCI_MAX_PORTS;
> + if (rc < 0)
> + goto intx;
> +
> + maxvec = rc;
> + rc = pci_enable_msi_block_part(pdev, n_ports, maxvec);
> + if (!rc)
> + return maxvec;
> + if (rc < 0)
> + goto intx;

Why is the above fallback necessary? The only other number which
makes sense is roundup_pow_of_two(n_ports), right? What does the
above fallback logic buy us?

Thanks.

--
tejun
--
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/