public inbox for xdp-newbies@vger.kernel.org
 help / color / mirror / Atom feed
From: "Ethy H. Brito" <ethy.brito@inexo.com.br>
To: Jesper Dangaard Brouer <brouer@redhat.com>
Cc: "xdp-newbies@vger.kernel.org" <xdp-newbies@vger.kernel.org>
Subject: Re: Newbie questions
Date: Fri, 18 Jun 2021 17:37:17 -0300	[thread overview]
Message-ID: <20210618173717.581e1058@babalu> (raw)
In-Reply-To: <20210618194007.4dfb838b@carbon>

On Fri, 18 Jun 2021 19:40:17 +0200
Jesper Dangaard Brouer <brouer@redhat.com> wrote:

> On Fri, 18 Jun 2021 13:31:06 -0300
> "Ethy H. Brito" <ethy.brito@inexo.com.br> wrote:
> 
> > Hi All.
> > 
> > I've been doing some home work reading the docs and some doubts have raised.
> > For reference, my environment is 
> > 	Ubuntu 20.04
> > 	kernel 5.4.0-66 
> > 	tc utility, iproute2-ss200127.
> > 
> > 1) https://xdp-project.net/areas/cpumap.html#cpumap--Create-script-MQ-HTB-silo-setup says that: 
> > 	"XPS (Transmit Packet Steering) will take precedence over any changes to 
> > 	skb->queue_mapping. You need to disable *XDP* via mask=00 in files 
> > 	/sys/class/net/DEV/queues/tx-*/xps_cpus"
> > 
> > Shouldn't it say I need to disable *XPS* (not XDP) using mask=00??  
> 
> You are absolutely right it is a typo. Can I ask you to fix that and
> send a GitHub PR?
> 
> The file you need to change is:
>  https://github.com/xdp-project/xdp-project/blob/master/areas/cpumap.org
> 

I'll have to figure it out how to do that. 
Never edited a GitHub before.

>  
> > 2) Taking tc_mq_htb_setup_example.sh as reference, how to enable XDP?  
> 
> XDP gets enabled when you load an XDP program.

Ok.

> 
> > Since I have to disable XPS, I assume I have to enable something in
> > replacement, right?  
> 
> No, XPS is just a kernel feature you need to disable, because it
> conflicts with the TC-BPF program usage of skb->queue_mapping.

Pretty advanced topic. But I'll get there.

> 
> 
> > How to set that CPU-0 will deal with mq queue 7FFF:1, CPU-1 will deal
> > with 7FFF:2, and so on?  
> 
> That is the role of the XDP program that redirect into a cpumap, and
> the key in the cpumap is the CPU number.

You mean I have to master this tutorial:
https://github.com/xdp-project/xdp-tutorial/blob/master/setup_dependencies.org

right?

> 
>  
> > 3) Is XDP available in kernel 5.4.0 ?  
> 
> I think so.
> 
> The real question is what NIC card drivers are you using?

driver=i40e driverversion=2.8.20-k duplex=full firmware=8.15

Is it ok for xdp use?

> 
> 
> > 4) Is XPS a suitable "substitute" for XDP ?  
> 
> XPS and XDP are completely unrelated kernel features.

I thought their both primary goal was to redirect packets to be handled by a specific CPU.

The difference would be that XDP does this upstream compared with XPS.
At least, I understand this way reading
https://developers.redhat.com/blog/2021/05/13/receive-side-scaling-rss-with-ebpf-and-cpumap#
 at "Faster software receive steering with XDP" paragraph
Is my understanding incorrect?

Regards

Ethy


> 
> -- 
> Best regards,
>   Jesper Dangaard Brouer
>   MSc.CS, Principal Kernel Engineer at Red Hat
>   LinkedIn: http://www.linkedin.com/in/brouer
> 


-- 

Ethy H. Brito         /"\
InterNexo Ltda.       \ /  CAMPANHA DA FITA ASCII - CONTRA MAIL HTML
+55 (12) 3797-6860     X   ASCII RIBBON CAMPAIGN - AGAINST HTML MAIL
S.J.Campos - Brasil   / \ 
 
PGP key: http://www.inexo.com.br/~ethy/0xC3F222A0.asc

  reply	other threads:[~2021-06-18 20:37 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-18 16:31 Newbie questions Ethy H. Brito
2021-06-18 17:40 ` Jesper Dangaard Brouer
2021-06-18 20:37   ` Ethy H. Brito [this message]
2021-06-22  1:28     ` Ethy H. Brito
2021-06-22  9:18       ` 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=20210618173717.581e1058@babalu \
    --to=ethy.brito@inexo.com.br \
    --cc=brouer@redhat.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