From: John Fastabend <john.fastabend@gmail.com>
To: Jiri Pirko <jiri@resnulli.us>
Cc: anjali.singhai@intel.com, jesse.brandeburg@intel.com,
jhs@mojatatu.com, ast@fb.com, donald.c.skidmore@intel.com,
horms@verge.net.au, netdev@vger.kernel.org, tgraf@suug.ch,
davem@davemloft.net
Subject: Re: [RFC PATCH 0/7] tc cls_u32 hardware interface
Date: Tue, 02 Feb 2016 06:58:22 -0800 [thread overview]
Message-ID: <56B0C40E.8070205@gmail.com> (raw)
In-Reply-To: <20160202114943.GA2191@nanopsycho.orion>
On 16-02-02 03:49 AM, Jiri Pirko wrote:
> Mon, Feb 01, 2016 at 02:48:32AM CET, john.fastabend@gmail.com wrote:
>> I was waiting for net-next to open to submit this but it seems like
>> a good idea to get an RFC out there for folks to start looking over.
>>
>> This extends the setup_tc framework so it can support more than just
>> the mqprio offload and push other classifiers and qdiscs into the
>> hardware. The series here targets the u32 classifier and ixgbe
>> driver. I worked out the u32 classifier because it is protocol
>> oblivious and aligns with multiple hardware devices I have access
>> to. I did an initial implementation on ixgbe because (a) I have one
>> in my box (b) its a stable driver and (c) it is relatively simple
>> compared to the other devices I have here but still has enough
>> flexibility to exercise the features of cls_u32.
>>
>> I intentionally limited the scope of this series to the basic
>> feature set. Specifically this uses a 'big hammer' feature bit
>> to do the offload or not. If the bit is set you get offloaded rules
>> if it is not then rules will not be offloaded. If we can agree on
>> this patch series there are some more patches on my queue we can
>> talk about to make the offload decision per rule using flags similar
>> to how we do l2 mac updates. Additionally the error strategy can
>> be improved to be hard aborting, log and continue, etc. I think
>> these are nice to have improvements but shouldn't block this series.
>> I am working on similar support for the other Intel devices now
>> as well namely i40e and fm10k.
>>
>> Also in the future work bin by adding get_parse_graph and
>> set_parse_graph attributes as in my previous flow_api work we
>> can build programmable devices and programmatically learn when
>> rules can or can not be loaded into the hardware.
>>
>> Note this series is on a slightly behind net-next stack I think it
>> should apply to the latest but I haven't updated the series for
>> awhile I'll do that soon I was sort of waiting for net-next to
>> open to do this.
>>
>> Any comments/feedback appreciated.
>
> I like this patchset. I gave it a quick peek and I it looks to me like
> the correct way to go. There are couple of things needed to be decided
Great.
,
> as you described them (e. g. per-rule offload) - we should discuss them
> on netdev conference. I hope you will be there.
>
I'll be at the conference so we can discuss it there. Although even
without the per-rule flow this set is useful. Like I noted I view that
as an optimization and its much more useful on a NIC where host traffic
is the norm vs a switch where host traffic is most likely the exception.
> I curious about how do you plan to expose the parse graphs get/set ops...
The current stack of patches I have on my dev box use a new netlink
handler. ethtool could work as well but my preference is netlink in
this case.
prev parent reply other threads:[~2016-02-02 14:58 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-02-01 1:48 [RFC PATCH 0/7] tc cls_u32 hardware interface John Fastabend
2016-02-01 1:49 ` [RFC PATCH 1/7] net: rework ndo tc op to consume additional qdisc handle parameter John Fastabend
2016-02-01 1:49 ` [RFC PATCH 2/7] net: rework setup_tc ndo op to consume general tc operand John Fastabend
2016-02-01 1:50 ` [RFC PATCH 3/7] net: sched: add cls_u32 offload hooks for netdevs John Fastabend
2016-02-02 16:25 ` Or Gerlitz
2016-02-02 16:42 ` John Fastabend
2016-02-02 22:06 ` Or Gerlitz
2016-02-01 1:51 ` [RFC PATCH 4/7] net: add tc offload feature flag John Fastabend
2016-02-01 1:51 ` [RFC PATCH 5/7] net: tc: helper functions to query action types John Fastabend
2016-02-01 1:52 ` [RFC PATCH 6/7] net: ixgbe: add minimal parser details for ixgbe John Fastabend
2016-02-02 16:27 ` Or Gerlitz
2016-02-02 16:46 ` John Fastabend
2016-02-01 1:53 ` [RFC PATCH 7/7] net: ixgbe: add support for tc_u32 offload John Fastabend
2016-02-02 2:17 ` David Miller
2016-02-02 4:53 ` John Fastabend
2016-02-02 11:49 ` [RFC PATCH 0/7] tc cls_u32 hardware interface Jiri Pirko
2016-02-02 14:58 ` John Fastabend [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=56B0C40E.8070205@gmail.com \
--to=john.fastabend@gmail.com \
--cc=anjali.singhai@intel.com \
--cc=ast@fb.com \
--cc=davem@davemloft.net \
--cc=donald.c.skidmore@intel.com \
--cc=horms@verge.net.au \
--cc=jesse.brandeburg@intel.com \
--cc=jhs@mojatatu.com \
--cc=jiri@resnulli.us \
--cc=netdev@vger.kernel.org \
--cc=tgraf@suug.ch \
/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.