[Intel-wired-lan] [PATCH iwl v2] i40e: print correct hw max rss count in kernel ring buffer

suresh ks suresh2514 at gmail.com
Wed Jan 24 02:55:27 UTC 2024


Hi Simon,

Thanks a lot for getting back to me.

I would say, it's not fixing any issue.  This is since the beginning.   My
analysis is given below:

[1]
If I check the i40e_reconfig_rss_queues() function history, I see
'pf->rss_size_max' has been used since the beginning.

Later via the below commit, we enabled more than 64 RSS.    <<<<<

+++
commit 9a3bd2f1e38e5f668200b5e720b4d87023f394d2
Author: Anjali Singhai Jain <anjali.singhai at intel.com>
Date:   Tue Feb 24 06:58:44 2015 +0000

    i40e: Enable more than 64 qps for the Main VSI

    When running in a single TC mode the HW can be configured to enable
more
    than max RSS qps for the Main VSI. This  patch makes it possible to
    enable as many as num_online_cpus().

    ethtool -L can still be used to reconfigure number of qps
    to a smaller value.

    Change-ID: I3e2df085276982603d86dfd79477c0ada8d30b8f
    Signed-off-by: Anjali Singhai Jain <anjali.singhai at intel.com>
    Signed-off-by: Shannon Nelson <shannon.nelson at intel.com>
    Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher at intel.com>

diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c
b/drivers/net/ethernet/intel/i40e/i40e_main.c
--- a/drivers/net/ethernet/intel/i40e/i40e_main.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_main.c
@@ -7252,23 +7259,27 @@
 int i40e_reconfig_rss_queues(struct i40e_pf *pf, int queue_count)
 {
+   struct i40e_vsi *vsi = pf->vsi[pf->lan_vsi];
+   int new_rss_size;
+
    if (!(pf->flags & I40E_FLAG_RSS_ENABLED))
        return 0;

-   queue_count = min_t(int, queue_count, pf->rss_size_max);
+   new_rss_size = min_t(int, queue_count, pf->rss_size_max);

-   if (queue_count != pf->rss_size) {
+   if (queue_count != vsi->num_queue_pairs) {
+       vsi->req_queue_pairs = queue_count;
        i40e_prep_for_reset(pf);
....
+++

So accordingly we should have changed  to using 'vsi->num_queue_pairs'
instead of 'pf->rss_size_max'  to print maximum rss size. Currently it's
printing 64 as maximum RSS whereas the system supports more than that.
 It's evident in my commit message kernel log which says:
  "kernel: i40e 0000:af:00.1: User requested queue count/HW max RSS count:
 104/64".

It should have been 104/104 <<<<

So I am a bit confused about whether I should add a 'Fixes:' tag  and even
if I use a tag, which commit I should show here.


thanks....
*Suresh KS*
suresh2514 at gmail.com
91-7709100053



On Tue, Jan 23, 2024 at 2:21 AM Simon Horman <horms at kernel.org> wrote:

> On Sat, Jan 20, 2024 at 12:58:06PM +0530, Suresh Kumar wrote:
> > pf->rss_size_max is hardcoded and always prints max rss count as 64.
> >
> > Eg:
> >   kernel: i40e 0000:af:00.1: User requested queue count/HW max RSS
> count:  104/64
> >
> > whereas  ethtool reports the correct value from "vsi->num_queue_pairs"
> >
> > Channel parameters for eno33:
> > Pre-set maximums:
> > RX:     n/a
> > TX:     n/a
> > Other:      1
> > Combined:   104
> > Current hardware settings:
> > RX:     n/a
> > TX:     n/a
> > Other:      1
> > Combined:   104  <-------
> >
> > and is misleading.
> >
> > Change it to vsi->num_queue_pairs
> >
> > Signed-off-by: Suresh Kumar <suresh2514 at gmail.com>
>
> Hi Suresh,
>
> following-up on our earlier emails.
>
> I do think that if this it is a fix it should have a fixes tag.
> Which should be for the commit where the bug was first visible to users.
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osuosl.org/pipermail/intel-wired-lan/attachments/20240124/dcd14b8b/attachment.html>


More information about the Intel-wired-lan mailing list