From: Martin Habets <habetsm.xilinx@gmail.com>
To: "Íñigo Huguet" <ihuguet@redhat.com>
Cc: Tianhao Zhao <tizhao@redhat.com>,
Edward Cree <ecree.xilinx@gmail.com>,
amaftei@solarflare.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
Subject: Re: [PATCH net 2/2] sfc: do not initialize non existing queues with efx_separate_tx_channels
Date: Fri, 27 May 2022 07:14:03 +0100 [thread overview]
Message-ID: <YpBsKz3BD5ABcRxn@gmail.com> (raw)
In-Reply-To: <CACT4ouf7P=jq8RM+3WOCVKhNi6mBAunuw65zgTHmHmzw8v-fqg@mail.gmail.com>
On Tue, May 24, 2022 at 05:36:49PM +0200, Íñigo Huguet wrote:
> On Fri, May 13, 2022 at 2:37 PM Martin Habets <habetsm.xilinx@gmail.com> wrote:
> >
> > On Fri, May 13, 2022 at 12:07:23PM +0100, Martin Habets wrote:
> > > On Wed, May 11, 2022 at 02:59:41PM +0200, Íñigo Huguet wrote:
> > > > If efx_separate_tx_channels is used, some error messages and backtraces
> > > > are shown in the logs (see below). This is because during channels
> > > > start, all queues in the channels are init asumming that they exist, but
> > > > they might not if efx_separate_tx_channels is used: some channels only
> > > > have RX queues and others only have TX queues.
> > >
> > > Thanks for reporting this. At first glance I suspect there may be more callers
> > > of efx_for_each_channel_tx_queue() which is why it is not yet working for you
> > > even with this fix.
> > > Probably we need to fix those macros themselves.
> > >
> > > I'm having a closer look, but it will take some time.
> >
> > It was easier than I thought. With the patch below I do not get any errors,
> > and ping works. I did not have to touch efx_for_each_channel_rx_queue().
> > Can you give this a try and report if it works for you?
>
> Martin, this is working fine for me. Module loads and unloads without
> errors, and I can ping and run an iperf3 test also without errors.
>
> How do you want to do it? Should I send this patch on your behalf
> within my patch series? Or do you want to send it yourself first?
IMO you did the hard work so I did not want to steal your thunder.
Please send it as part of your series, I'll Ack it.
Martin
> >
> > Martin
> > ---
> > drivers/net/ethernet/sfc/net_driver.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/net/ethernet/sfc/net_driver.h b/drivers/net/ethernet/sfc/net_driver.h
> > index 318db906a154..723bbeea5d0c 100644
> > --- a/drivers/net/ethernet/sfc/net_driver.h
> > +++ b/drivers/net/ethernet/sfc/net_driver.h
> > @@ -1530,7 +1530,7 @@ static inline bool efx_channel_is_xdp_tx(struct efx_channel *channel)
> >
> > static inline bool efx_channel_has_tx_queues(struct efx_channel *channel)
> > {
> > - return true;
> > + return channel && channel->channel >= channel->efx->tx_channel_offset;
> > }
> >
> > static inline unsigned int efx_channel_num_tx_queues(struct efx_channel *channel)
> >
>
>
> --
> Íñigo Huguet
prev parent reply other threads:[~2022-05-27 6:14 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-11 12:59 [PATCH net 0/2] sfc: fix some efx_separate_tx_channels errors Íñigo Huguet
2022-05-11 12:59 ` [PATCH net 1/2] sfc: fix wrong tx channel offset with efx_separate_tx_channels Íñigo Huguet
2022-05-12 17:01 ` Jakub Kicinski
2022-05-11 12:59 ` [PATCH net 2/2] sfc: do not initialize non existing queues " Íñigo Huguet
2022-05-13 11:07 ` Martin Habets
2022-05-13 12:37 ` Martin Habets
2022-05-24 15:36 ` Íñigo Huguet
2022-05-27 6:14 ` Martin Habets [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YpBsKz3BD5ABcRxn@gmail.com \
--to=habetsm.xilinx@gmail.com \
--cc=amaftei@solarflare.com \
--cc=davem@davemloft.net \
--cc=ecree.xilinx@gmail.com \
--cc=edumazet@google.com \
--cc=ihuguet@redhat.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=tizhao@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.