lkml.org 
[lkml]   [2023]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: Re: [PATCH] net/net_failover: fix queue exceeding warning
On Tue, Mar 21, 2023 at 11:17 AM Faicker Mo <faicker.mo@ucloud.cn> wrote:
>
> When tx from the net_failover device, the actual tx queue number is the salve device.

Then why is primary OK..

> The ndo_select_queue of net_failover device returns the txq which is the primary device txq
> if the primary device is OK.

This is what is done in all the functions. I don't think there is a problem.
Not sure if there is an issue I am not getting, at least with the description.
I will let the maintainer take the call. Thanks.

> This number may be bigger than the default 16 of the net_failover device.
> A warning will be reported in netdev_cap_txqueue which device is the net_failover.
>
>
> From: Pavan Chebbi <pavan.chebbi@broadcom.com>
> Date: 2023-03-21 13:11:52
> To:Faicker Mo <faicker.mo@ucloud.cn>
> cc: Sridhar Samudrala <sridhar.samudrala@intel.com>,"David S. Miller" <davem@davemloft.net>,Eric Dumazet <edumazet@google.com>,Jakub Kicinski <kuba@kernel.org>,Paolo Abeni <pabeni@redhat.com>,netdev@vger.kernel.org,linux-kernel@vger.kernel.org
> Subject: Re: [PATCH] net/net_failover: fix queue exceeding warning>On Tue, Mar 21, 2023 at 8:15 AM Faicker Mo <faicker.mo@ucloud.cn> wrote:
> >>
> >> If the primary device queue number is bigger than the default 16,
> >> there is a warning about the queue exceeding when tx from the
> >> net_failover device.
> >>
> >
> >Can you describe the issue more? If the net device has not implemented
> >its own selection then netdev_pick_tx should take care of the
> >real_num_tx_queues.
> >Is that not happening?
> >
> >> Signed-off-by: Faicker Mo <faicker.mo@ucloud.cn>
> >> ---
> >> drivers/net/net_failover.c | 8 ++------
> >> 1 file changed, 2 insertions(+), 6 deletions(-)
> >>
> >> diff --git a/drivers/net/net_failover.c b/drivers/net/net_failover.c
> >> index 7a28e082436e..d0c916a53d7c 100644
> >> --- a/drivers/net/net_failover.c
> >> +++ b/drivers/net/net_failover.c
> >> @@ -130,14 +130,10 @@ static u16 net_failover_select_queue(struct net_device *dev,
> >> txq = ops->ndo_select_queue(primary_dev, skb, sb_dev);
> >> else
> >> txq = netdev_pick_tx(primary_dev, skb, NULL);
> >> -
> >> - qdisc_skb_cb(skb)->slave_dev_queue_mapping = skb->queue_mapping;
> >> -
> >> - return txq;
> >> + } else {
> >> + txq = skb_rx_queue_recorded(skb) ? skb_get_rx_queue(skb) : 0;
> >> }
> >>
> >> - txq = skb_rx_queue_recorded(skb) ? skb_get_rx_queue(skb) : 0;
> >> -
> >> /* Save the original txq to restore before passing to the driver */
> >> qdisc_skb_cb(skb)->slave_dev_queue_mapping = skb->queue_mapping;
> >>
> >> --
> >> 2.39.1
> >>
>
>
[unhandled content-type:application/pkcs7-signature]
\
 
 \ /
  Last update: 2023-03-27 01:10    [W:5.694 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site