Re: [PATCH 3/7] genirq/affinity: Handle pre/post vectors in irq_create_affinity_masks()

From: Bjorn Helgaas
Date: Tue Nov 08 2016 - 16:21:08 EST


On Mon, Nov 07, 2016 at 10:47:38AM -0800, Christoph Hellwig wrote:
> From: Christogh Hellwig <hch@xxxxxx>
>
> Only calculate the affinity for the main I/O vectors, and skip the
> pre or post vectors specified by struct irq_affinity.
>
> Also remove the irq_affinity cpumask argument that has never been used.
> If we ever need it in the future we can pass it through struct
> irq_affinity.
>
> Signed-off-by: Christogh Hellwig <hch@xxxxxx>

s/Christogh/Christoph/ (also above, and maybe other patches too?)

Acked-by: Bjorn Helgaas <bhelgaas@xxxxxxxxxx>

> ---
> drivers/pci/msi.c | 4 ++--
> include/linux/interrupt.h | 4 ++--
> kernel/irq/affinity.c | 46 +++++++++++++++++++++++++---------------------
> 3 files changed, 29 insertions(+), 25 deletions(-)
>
> diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
> index c58d3c2..1761b8a 100644
> --- a/drivers/pci/msi.c
> +++ b/drivers/pci/msi.c
> @@ -558,7 +558,7 @@ msi_setup_entry(struct pci_dev *dev, int nvec, bool affinity)
> u16 control;
>
> if (affinity) {
> - masks = irq_create_affinity_masks(dev->irq_affinity, nvec);
> + masks = irq_create_affinity_masks(nvec, NULL);
> if (!masks)
> pr_err("Unable to allocate affinity masks, ignoring\n");
> }
> @@ -697,7 +697,7 @@ static int msix_setup_entries(struct pci_dev *dev, void __iomem *base,
> int ret, i;
>
> if (affinity) {
> - masks = irq_create_affinity_masks(dev->irq_affinity, nvec);
> + masks = irq_create_affinity_masks(nvec, NULL);
> if (!masks)
> pr_err("Unable to allocate affinity masks, ignoring\n");

Not caused by this patch, but can we use dev_err() here and above?