All of lore.kernel.org
 help / color / mirror / Atom feed
From: Cameron Elliott <cameron@cameronelliott.com>
To: Xdp <xdp-newbies@vger.kernel.org>
Subject: Cannot run multiple 'xdpsock' concurrently?
Date: Thu, 30 Jan 2020 18:15:55 -0800	[thread overview]
Message-ID: <CAMyc9bXvhK2a-m9KEj34rnc3EBM4mgFicdfvRWay=cwuNVDg8g@mail.gmail.com> (raw)

Hello, I am trying to measure the maximum mpps I can push using AF_XDP
on a 40G X710

I can do ~22 mpps after resolving a few bumbles I made with drivers,
etc., (Thanks Magnus!)
when using a single instance of 'xdpsock'


Apparently the way to upto 50, 60 or 70? mpps is to use multiple cores...
And apparently the simple way to do that, is multiple instances of
xdpsock on different queues.

But, my attempts with multiple instances fail. :(



First, I checked my channel setup:

$ sudo ethtool --set-channels enp1s0f0
no channel parameters changed.
current values: rx 0 tx 0 other 1 combined 4

I presume that is okay...

Then I run these two commands in two different windows:

sudo  /home/c/bpf-next/samples/bpf/xdpsock -i enp1s0f0 -t -N -z -q 0
sudo  /home/c/bpf-next/samples/bpf/xdpsock -i enp1s0f0 -t -N -z -q 1

With the only difference being the queue id.

The first will start and show ~22 mpps tx rate.
When I start the second, both instances die:

The first instace dies with:
/home/c/bpf-next/samples/bpf/xdpsock_user.c:kick_tx:794: errno:
100/"Network is down"

The second instance dies with:
/home/c/bpf-next/samples/bpf/xdpsock_user.c:kick_tx:794: errno: 6/"No
such device or address"


Do I understand correctly I should be able to run two instances like
this concurrently?



Thank you for any ideas, input.



# ethtool dump / i40e driver from recent bpf-next clone
c@lumen ~> ethtool -i enp1s0f0
driver: i40e
version: 2.8.20-k
firmware-version: 7.10 0x80006456 1.2527.0
expansion-rom-version:
bus-info: 0000:01:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes

             reply	other threads:[~2020-01-31  2:16 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-31  2:15 Cameron Elliott [this message]
     [not found] <CAMyc9bVixUDEJ-WHLJaCCTF3iV4pFF2j+RPM0hM1XOKh6S2yBw@mail.gmail.com>
2020-02-03  9:53 ` Cannot run multiple 'xdpsock' concurrently? Magnus Karlsson
2020-02-03  3:11   ` Maciej Fijalkowski
2020-02-03 11:49     ` Maxim Mikityanskiy
2020-02-04  6:50       ` Maciej Fijalkowski
2020-02-04 15:41         ` Björn Töpel
2020-02-04  9:46           ` Maciej Fijalkowski
2020-02-04 17:20             ` Björn Töpel
2020-02-06  7:02               ` Magnus Karlsson

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='CAMyc9bXvhK2a-m9KEj34rnc3EBM4mgFicdfvRWay=cwuNVDg8g@mail.gmail.com' \
    --to=cameron@cameronelliott.com \
    --cc=xdp-newbies@vger.kernel.org \
    /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.