[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190125095617.GA17754@ming.t460p>
Date: Fri, 25 Jan 2019 17:56:19 +0800
From: Ming Lei <ming.lei@...hat.com>
To: Christoph Hellwig <hch@....de>, Bjorn Helgaas <helgaas@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>
Cc: Jens Axboe <axboe@...nel.dk>, linux-block@...r.kernel.org,
Sagi Grimberg <sagi@...mberg.me>,
linux-nvme@...ts.infradead.org, linux-kernel@...r.kernel.org,
linux-pci@...r.kernel.org, Keith Busch <keith.busch@...el.com>
Subject: Re: [PATCH 0/5] genirq/affinity: introduce .setup_affinity to
support allocating interrupt sets
On Fri, Jan 25, 2019 at 05:53:42PM +0800, Ming Lei wrote:
> Hi,
>
> The current support for allocating interrupt sets requires that same 'max_vec'
> and 'min_vec' is passed to pci_alloc_irq_vectors_affinity(), then driver has to
> try to allocate again and again until it succeeds.
>
> This patch introduces .setup_affinity callback, and we can use it to
> re-caculate interrupt sets and build affinity for each set after
> irq vectors are allocated.
>
> Turns out both genirq/affinity and nvme code get simplified a lot.
>
> Please review and comment!
>
> Ming Lei (5):
> genirq/affinity: move allocation of 'node_to_cpumask' to
> irq_build_affinity_masks
> genirq/affinity: allow driver to setup managed IRQ's affinity
> genirq/affinity: introduce irq_build_affinity()
> nvme-pci: simplify nvme_setup_irqs() via .setup_affinity callback
> genirq/affinity: remove support for allocating interrupt sets
>
> drivers/nvme/host/pci.c | 97 +++++++++++++++++++++--------------------
> drivers/pci/msi.c | 14 ------
> include/linux/interrupt.h | 42 ++++++++++++------
> kernel/irq/affinity.c | 108 ++++++++++++++++++++++++----------------------
> 4 files changed, 133 insertions(+), 128 deletions(-)
oops, forget to CC Keith.
Thanks,
Ming
Powered by blists - more mailing lists