public inbox for netdev@vger.kernel.org 
 help / color / mirror / Atom feed
From: Vinicius Costa Gomes <vinicius.gomes@intel•com>
To: Vladimir Oltean <olteanv@gmail•com>
Cc: Murali Karicheri <m-karicheri2@ti•com>,
	"netdev\@vger.kernel.org" <netdev@vger•kernel.org>
Subject: Re: taprio testing - Any help?
Date: Mon, 14 Oct 2019 16:14:48 -0700	[thread overview]
Message-ID: <87a7a25387.fsf@linux.intel.com> (raw)
In-Reply-To: <CA+h21hon+QzS7tRytM2duVUvveSRY5BOGXkHtHOdTEwOSBcVAg@mail.gmail.com>

Vladimir Oltean <olteanv@gmail•com> writes:

>
> What do you mean taprio doesn't support tc filter blocks? What do you
> think there is to do in taprio to support that?
> I don't think Murali is asking for filter offloading, but merely for a
> way to direct frames to a certain traffic class on xmit from Linux.
> Something like this works perfectly fine:
>
> sudo tc qdisc add dev swp2 root handle 1: taprio num_tc 2 map 0 1
> queues 1@0 1@1 base-time 1000 sched-entry S 03 300000 flags 2
> # Add the qdisc holding the classifiers
> sudo tc qdisc add dev swp2 clsact
> # Steer L2 PTP to TC 1 (see with "tc filter show dev swp2 egress")
> sudo tc filter add dev swp2 egress prio 1 u32 match u16 0x88f7 0xffff
> at -2 action skbedit priority 1
>

That's cool. Everyday I'm learning something new :-)

> However, the clsact qdisc and tc u32 egress filter can be replaced
> with proper use of the SO_PRIORITY API, which is preferable for new
> applications IMO.
>
> I'm trying to send a demo application to tools/testing/selftests/
> which sends cyclic traffic through a raw L2 socket at a configurable
> base-time and cycle-time, along with the accompanying scripts to set
> up the receiver and bandwidth reservation on an in-between switch. But
> I have some trouble getting the sender application to work reliably at
> 100 us cycle-time, so it may take a while until I figure out with
> kernelshark what's going on.

Yeah, 100us cycle-time for software mode is kind of hard to make it work
reliably. i.e. without any offloading, I can only get something close to
that to work with a PREEMPT_RT kernel and disabling all kinds of power
saving features.


Cheers,
--
Vinicius

      parent reply	other threads:[~2019-10-14 23:13 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-11 19:35 taprio testing - Any help? Murali Karicheri
2019-10-11 20:12 ` Vinicius Costa Gomes
2019-10-11 20:56   ` Murali Karicheri
2019-10-11 21:26     ` Vinicius Costa Gomes
2019-10-13 21:10       ` Vladimir Oltean
2019-10-14 15:33         ` Murali Karicheri
2019-10-14 16:18           ` taprio testing with multiple streams Murali Karicheri
2019-10-14 23:39           ` taprio testing - Any help? Vinicius Costa Gomes
2019-10-16 17:02             ` Murali Karicheri
2019-10-16 17:14               ` Murali Karicheri
2019-10-16 17:22                 ` Murali Karicheri
2019-10-16 20:32               ` Vinicius Costa Gomes
2019-10-17 13:56                 ` Murali Karicheri
2019-10-17 19:32                   ` Vinicius Costa Gomes
2019-10-17 21:02                     ` Murali Karicheri
2019-10-17 22:26                       ` Murali Karicheri
2019-10-14 23:14         ` Vinicius Costa Gomes [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=87a7a25387.fsf@linux.intel.com \
    --to=vinicius.gomes@intel$(echo .)com \
    --cc=m-karicheri2@ti$(echo .)com \
    --cc=netdev@vger$(echo .)kernel.org \
    --cc=olteanv@gmail$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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