XDP Newbie developer discussions
 help / color / mirror / Atom feed
From: Jesse Brandeburg <jesse.brandeburg@intel.com>
To: Zvi Effron <zeffron@riotgames.com>
Cc: T K Sourabh <sourabhtk37@gmail.com>, Xdp <xdp-newbies@vger.kernel.org>
Subject: Re: Dropped packets mapping IRQs for adjusted queue counts on i40e
Date: Wed, 5 May 2021 13:01:28 -0700	[thread overview]
Message-ID: <20210505130128.00006720@intel.com> (raw)
In-Reply-To: <CAC1LvL1Kd-TCuPk0BEQyGvEiLzgUqkZHOKQNOUnxXSY6NjFMmw@mail.gmail.com>

Zvi Effron wrote:

> On Tue, May 4, 2021 at 4:07 PM Zvi Effron <zeffron@riotgames.com> wrote:
> > I'm suspecting it's something with how XDP_REDIRECT is implemented in
> > the i40e driver, but I don't know if this is a) cross driver behavior,
> > b) expected behavior, or c) a bug.
> I think I've found the issue, and it appears to be specific to i40e
> (and maybe other drivers, too, but not XDP itself).
> 
> When performing the XDP xmit, i40e uses the smp_processor_id() to
> select the tx queue (see
> https://elixir.bootlin.com/linux/v5.12.1/source/drivers/net/ethernet/intel/i40e/i40e_txrx.c#L3846).
> I'm not 100% clear on how the CPU is selected (since we don't use
> cores 0 and 1), we end up on a core whose id is higher than any
> available queue.
> 
> I'm going to try to modify our IRQ mappings to test this.
> 
> If I'm correct, this feels like a bug to me, since it requires a user
> to understand low level driver details to do IRQ remapping, which is a
> bit higher level. But if it's intended, we'll just have to figure out
> how to work around this. (Unfortunately, using split tx and rx queues
> is not possible with i40e, so that easy solution is unavailable.)
> 
> --Zvi


It seems like for Intel drivers, igc, ixgbe, i40e, ice all have
this problem.

Notably, igb, fixes it like I would expect.

Let's talk about it over on intel-wired-lan and cc netdev.

Jesse

  parent reply	other threads:[~2021-05-05 20:01 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-05-01  0:45 Dropped packets mapping IRQs for adjusted queue counts on i40e Zvi Effron
     [not found] ` <CADS2XXpjasmJKP__oHsrvv3EG8n-FjB6sqHwgQfh7QgeJ8GrrQ@mail.gmail.com>
2021-05-01 17:56   ` Zvi Effron
2021-05-02 20:16     ` T K Sourabh
2021-05-04 23:07       ` Zvi Effron
2021-05-05 18:55         ` Zvi Effron
2021-05-05 19:53           ` Zvi Effron
2021-05-05 19:55           ` David Ahern
2021-05-05 20:01           ` Jesse Brandeburg [this message]
2021-05-05 21:21             ` Maciej Fijalkowski
2021-05-06 10:29               ` Toke Høiland-Jørgensen
2021-05-09 15:50                 ` Maciej Fijalkowski
2021-05-10 11:22                   ` Toke Høiland-Jørgensen
2021-05-10 15:01                     ` Jesper Dangaard Brouer

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=20210505130128.00006720@intel.com \
    --to=jesse.brandeburg@intel.com \
    --cc=sourabhtk37@gmail.com \
    --cc=xdp-newbies@vger.kernel.org \
    --cc=zeffron@riotgames.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox