[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190825080212.GA17265@ming.t460p>
Date: Sun, 25 Aug 2019 16:02:13 +0800
From: Ming Lei <ming.lei@...hat.com>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: linux-kernel@...r.kernel.org, Jens Axboe <axboe@...nel.dk>,
Christoph Hellwig <hch@....de>,
Keith Busch <kbusch@...nel.org>,
linux-nvme@...ts.infradead.org,
Jon Derrick <jonathan.derrick@...el.com>
Subject: Re: [PATCH V6 0/2] genriq/affinity: Make vectors allocation fair
On Mon, Aug 19, 2019 at 08:49:35PM +0800, Ming Lei wrote:
> Hi Thomas,
>
> The 1st patch makes __irq_build_affinity_masks() more reliable, such as,
> all nodes can be covered in the spread.
>
> The 2nd patch spread vectors on node according to the ratio of this node's
> CPU number to number of all remaining CPUs, then vectors assignment can
> become more fair. Meantime, the warning report from Jon Derrick can be
> fixed.
>
> Please consider it for V5.4.
>
> V6:
> - fix build waring reported by zero day, and extra change is only
> done on irq_build_affinity_masks()
>
> V5:
> - remove patch 1 of V4, which is wrong
> - handle vector wrapping because the 'start vector' may begin
> anywhere, especially for the 2nd stage spread
> - add more comment on the vector allocation algorithm
> - cleanup code a bit
> - run more tests to verify the change, which always get the
> expected result. Covers lots of num_queues, numa topo, CPU
> unpresent setting.
>
> V4:
> - provide proof why number of allocated vectors for each node is <= CPU
> count of this node
>
> V3:
> - re-order the patchset
> - add helper of irq_spread_vectors_on_node()
> - handle vector spread correctly in case that numvecs is > ncpus
> - return -ENOMEM to API's caller
>
> V2:
> - add patch3
> - start to allocate vectors from node with minimized CPU number,
> then every node is guaranteed to be allocated at least one vector.
> - avoid cross node spread
>
>
>
> Ming Lei (2):
> genirq/affinity: Improve __irq_build_affinity_masks()
> genirq/affinity: Spread vectors on node according to nr_cpu ratio
>
> kernel/irq/affinity.c | 231 ++++++++++++++++++++++++++++++++++++------
> 1 file changed, 201 insertions(+), 30 deletions(-)
>
> Cc: Jens Axboe <axboe@...nel.dk>
> Cc: Christoph Hellwig <hch@....de>
> Cc: Keith Busch <kbusch@...nel.org>
> Cc: linux-nvme@...ts.infradead.org,
> Cc: Jon Derrick <jonathan.derrick@...el.com>
> --
> 2.20.1
>
Hi Thomas,
Gentle ping on the two patches.
Thanks,
Ming
Powered by blists - more mailing lists