[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <52220ae0-0ed5-f638-ebe2-725e0333ea6a@redhat.com>
Date: Fri, 26 Jun 2020 16:11:24 -0400
From: Nitesh Narayan Lal <nitesh@...hat.com>
To: Christoph Hellwig <hch@...radead.org>
Cc: linux-kernel@...r.kernel.org, frederic@...nel.org,
mtosatti@...hat.com, sassmann@...hat.com,
jeffrey.t.kirsher@...el.com, jacob.e.keller@...el.com,
jlelli@...hat.com
Subject: Re: [Patch v1] i40e: limit the msix vectors based on housekeeping
CPUs
On 6/16/20 4:03 AM, Christoph Hellwig wrote:
> On Mon, Jun 15, 2020 at 04:21:25PM -0400, Nitesh Narayan Lal wrote:
>> + hk_flags = HK_FLAG_DOMAIN | HK_FLAG_WQ;
>> + mask = housekeeping_cpumask(hk_flags);
>> + cpus = cpumask_weight(mask);
> Code like this has no business inside a driver. Please provide a
> proper core API for it instead. Also please wire up
> pci_alloc_irq_vectors* to use this API as well.
>
Hi Christoph,
I have been looking into using nr_houskeeping_* API that I will be defining
within pci_alloc_irq_vectors* to limit the nr of vectors.
However, I am wondering about a few things:
- Some of the drivers such as i40e until now, use the num_online CPUs to
restrict the number of vectors that they should create. Will it make sense if
I restrict the maximum vectors requested based on
nr_online/housekeeping_cpus (Though I will have to make sure that the
min_vecs is always satisfied)?
The other option would be to check for the total available vectors in all
online/housekeeping CPUs for limiting the maxvecs, this way will probably be
more accurate?
- Another thing that I am wondering about is the right way to test this change.
Please let me know if you have any suggestions?
--
Nitesh
Download attachment "signature.asc" of type "application/pgp-signature" (834 bytes)
Powered by blists - more mailing lists