All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jamal Hadi Salim <jhs@mojatatu.com>
To: Daniel Borkmann <daniel@iogearbox.net>, davem@davemloft.net
Cc: netdev@vger.kernel.org, xiyou.wangcong@gmail.com,
	alexei.starovoitov@gmail.com
Subject: Re: [net-next PATCH 0/5] net_sched: Add support for IFE action
Date: Wed, 24 Feb 2016 07:49:44 -0500	[thread overview]
Message-ID: <56CDA6E8.7010604@mojatatu.com> (raw)
In-Reply-To: <56CC7C20.3090302@iogearbox.net>

On 16-02-23 10:34 AM, Daniel Borkmann wrote:
> On 02/23/2016 03:28 PM, Jamal Hadi Salim wrote:
[..]

>> These are basic metadata. The question to ask is what could one use
>> skb->hash for. Today it is used to select a cpu to balance to.
>
> Right, but that happens before you decode that information from your TLV
> on ingress qdisc. And any subsequent skb_get_hash() to read out skb->hash
> will effectively overwrite what you set there and call into flow dissector.
>

Drivers do set the hash. My use case is slightly different.
I have a NIC which has an embedded cavium processor. This thing
strips off the TLV and uses the hash to select the host MSI.
Only thing we dont use at the moment is queue_mapping.


> My concern is we add 20 new modules like this that only do trivial things,
> where instead they could have been consolidated and reduce maintenance. Or
> is this hard module requirement related to the IFE_META_* module parameter?
>

Yes, a bit of that ++.
I am between two worlds: There are people who do user space packet
processing that claim they do so because they can quickly prototype
without compiling the kernel. My goal is to make it easy for people
adding new metadata without having to deal with kernel recompile.
I do expect for there to be many variations of what that metadata
will be. For that reason I have them as standalone modules and they
serve the purpose to illustrate how someone would write such a module.
The IFE_META_XXX is part of saying i dont need to have people
changing the header file either. But i want them to use static
META_IDS. So the IFE module parameter is supposed to allow them to
change the upper bound of modules when insmoding ife_act so that
proper validation can happen. I cant make it as large as 32-bit
or not check if it is correct. If i take it out - then i would have to
do that or introduce some complex mechanism for registration.

cheers,
jamal

  reply	other threads:[~2016-02-24 12:49 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-22 13:21 [net-next PATCH 0/5] net_sched: Add support for IFE action Jamal Hadi Salim
2016-02-22 13:21 ` [net-next PATCH 1/5] introduce " Jamal Hadi Salim
2016-02-22 13:21 ` [net-next PATCH 2/5] Support to encoding decoding skb mark on " Jamal Hadi Salim
2016-02-22 13:21 ` [net-next PATCH 3/5] Support to encoding decoding skb prio " Jamal Hadi Salim
2016-02-22 17:01   ` Daniel Borkmann
2016-02-22 13:21 ` [net-next PATCH 4/5] Support to encoding decoding skb hashid " Jamal Hadi Salim
2016-02-22 16:56   ` Daniel Borkmann
2016-02-22 13:21 ` [net-next PATCH 5/5] Support to encoding decoding skb queue map " Jamal Hadi Salim
2016-02-22 16:59   ` Daniel Borkmann
2016-02-22 21:03   ` John Fastabend
2016-02-23 12:17     ` Jamal Hadi Salim
2016-02-23 19:33       ` John Fastabend
2016-02-22 16:47 ` [net-next PATCH 0/5] net_sched: Add support for " Daniel Borkmann
2016-02-23 12:09   ` Jamal Hadi Salim
2016-02-23 13:20     ` Daniel Borkmann
2016-02-23 14:28       ` Jamal Hadi Salim
2016-02-23 15:34         ` Daniel Borkmann
2016-02-24 12:49           ` Jamal Hadi Salim [this message]
2016-02-24 17:48             ` Daniel Borkmann
2016-02-25 12:23               ` Jamal Hadi Salim
2016-02-25 21:34                 ` Daniel Borkmann
2016-02-25 22:40                   ` Jamal Hadi Salim
2016-02-26  0:03                     ` Daniel Borkmann
2016-02-24 17:58             ` Daniel Borkmann
2016-02-25 12:35               ` Jamal Hadi Salim
2016-02-23  7:00 ` Cong Wang
2016-02-23 12:18   ` Jamal Hadi Salim

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=56CDA6E8.7010604@mojatatu.com \
    --to=jhs@mojatatu.com \
    --cc=alexei.starovoitov@gmail.com \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=netdev@vger.kernel.org \
    --cc=xiyou.wangcong@gmail.com \
    /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.