xdp-newbies.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Christian Deacon <gamemann@gflclan.com>
To: David Ahern <dsahern@gmail.com>,
	Jesper Dangaard Brouer <brouer@redhat.com>
Cc: xdp-newbies@vger.kernel.org
Subject: Re: AF_XDP Side Of Project Breaking With XDP-Native
Date: Sun, 24 May 2020 13:13:27 -0500	[thread overview]
Message-ID: <2ed7d441-1a98-b4c1-8799-733ae286ed5e@gflclan.com> (raw)
In-Reply-To: <6709130c-a676-127d-ac9d-d0ab35397b0d@gmail.com>

Hey David,


Thank you for your response!


The VM only has one CPU right now. It's possible the cluster has 8 RX 
queues I'd imagine, but I don't have that information sadly. I executed 
the same command on another VM I have with two CPUs (not being used for 
the XDP-native testing):


```

root@Test:~# ethtool -l ens3
Channel parameters for ens3:
Pre-set maximums:
RX:             0
TX:             0
Other:          0
Combined:       8
Current hardware settings:
RX:             0
TX:             0
Other:          0
Combined:       2
```


I did receive this from my hosting provider when asking which NIC driver 
they use:


```

Hello,

Thanks for your inquiry.

We do not pass through the host node's NIC to your VPS.

Because of that, it's not relevant what NIC driver we are using on our 
host nodes.

Thanks for your patience.

```


To my understanding, if the NIC isn't offloading packets directly to our 
VPS, wouldn't this destroy the purpose of using XDP-native over 
XDP-generic/SKB mode for performance in our case? I was under the 
assumption that was the point of XDP-native. If so, I'm not sure why the 
program is loading with XDP-native without any issues besides the AF_XDP 
program.


I will admit I've been wondering what the difference is between 
`XDP_FLAGS_DRV_MODE` (XDP-native) and `XDP_FLAGS_HW_MODE` since I 
thought XDP-native was offloading packets from the NIC.


Thank you for the help!


On 5/24/2020 12:35 PM, David Ahern wrote:
> On 5/22/20 10:12 AM, Christian Deacon wrote:
>> Hey Jesper,
>>
>>
>> I apologize for not providing that information before. The driver is
>> `virtio_net`. Unfortunately, I'm not sure what the NIC driver on the
>> cluster is. Once my program's code is confirmed to be correct, I will
>> try reaching out to our hosting provider to see if they can provide this
>> information if the NIC's driver is the suspected cause to this issue.
>>
>> ```
>>
>> root@SEAV21:~/AF_XDP-Test# ethtool -i ens3
>> driver: virtio_net
>> version: 1.0.0
>> firmware-version:
>> expansion-rom-version:
>> bus-info: 0000:00:03.0
>> supports-statistics: yes
>> supports-test: no
>> supports-eeprom-access: no
>> supports-register-dump: no
>> supports-priv-flags: no
>> ```
>>
>>
> Is this a 4-cpu VM or 8 cpu VM?
>
> A previous response had:
>
> root@SEAV21:~/AF_XDP-Test# ethtool -l ens3
> Channel parameters for ens3:
> Pre-set maximums:
> RX:             0
> TX:             0
> Other:          0
> Combined:       8
> Current hardware settings:
> RX:             0
> TX:             0
> Other:          0
> Combined:       1
>
> The 8 for pre-set max says the nic has 8 queues. If it is a 4-vcpu vm,
> then try
>
> ethtool -L ens3 combined 4
>
> which leaves 4 for xdp. If it is an 8 cpu VM I believe you are out of
> luck given current requirements.

  reply	other threads:[~2020-05-24 18:13 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-22 15:22 AF_XDP Side Of Project Breaking With XDP-Native Christian Deacon
2020-05-22 15:51 ` Jesper Dangaard Brouer
2020-05-22 16:12   ` Christian Deacon
2020-05-24 17:35     ` David Ahern
2020-05-24 18:13       ` Christian Deacon [this message]
2020-05-24 18:58         ` David Ahern
2020-05-24 19:27           ` Christian Deacon
2020-05-24 20:23             ` David Ahern
2020-05-24 21:25               ` Christian Deacon

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=2ed7d441-1a98-b4c1-8799-733ae286ed5e@gflclan.com \
    --to=gamemann@gflclan.com \
    --cc=brouer@redhat.com \
    --cc=dsahern@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).