All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <jakub.kicinski@netronome.com>
To: Jiri Pirko <jiri@resnulli.us>
Cc: netdev@vger.kernel.org, davem@davemloft.net, jhs@mojatatu.com,
	xiyou.wangcong@gmail.com, simon.horman@netronome.com,
	john.hurley@netronome.com, dsahern@gmail.com, mlxsw@mellanox.com
Subject: Re: [patch net-next 6/9] net: sched: cls_flower: propagate chain teplate creation and destruction to drivers
Date: Mon, 25 Jun 2018 22:00:50 -0700	[thread overview]
Message-ID: <20180625220050.0ff6d44c@cakuba.netronome.com> (raw)
In-Reply-To: <20180625210148.9386-7-jiri@resnulli.us>

On Mon, 25 Jun 2018 23:01:45 +0200, Jiri Pirko wrote:
> From: Jiri Pirko <jiri@mellanox.com>
> 
> Introduce a couple of flower offload commands in order to propagate
> template creation/destruction events down to device drivers.
> Drivers may use this information to prepare HW in an optimal way
> for future filter insertions.
> 
> Signed-off-by: Jiri Pirko <jiri@mellanox.com>

> diff --git a/net/sched/cls_flower.c b/net/sched/cls_flower.c
> index d64d43843a3a..276ba25a09c3 100644
> --- a/net/sched/cls_flower.c
> +++ b/net/sched/cls_flower.c
> @@ -1120,6 +1120,43 @@ static void fl_walk(struct tcf_proto *tp, struct tcf_walker *arg)
>  	}
>  }
>  
> +static void fl_hw_create_tmplt(struct tcf_chain *chain,
> +			       struct fl_flow_tmplt *tmplt,
> +			       struct netlink_ext_ack *extack)
> +{
> +	struct tc_cls_flower_offload cls_flower = {};
> +	struct tcf_block *block = chain->block;
> +	struct tcf_exts dummy_exts = { 0, };
> +
> +	cls_flower.common.chain_index = chain->index;

Did you skip extack on purpose?

> +	cls_flower.command = TC_CLSFLOWER_TMPLT_CREATE;
> +	cls_flower.cookie = (unsigned long) tmplt;
> +	cls_flower.dissector = &tmplt->dissector;
> +	cls_flower.mask = &tmplt->mask;
> +	cls_flower.key = &tmplt->dummy_key;
> +	cls_flower.exts = &dummy_exts;
> +
> +	/* We don't care if driver (any of them) fails to handle this
> +	 * call. It serves just as a hint for it.
> +	 */
> +	tc_setup_cb_call(block, NULL, TC_SETUP_CLSFLOWER,
> +			 &cls_flower, false);
> +}

  reply	other threads:[~2018-06-26  5:00 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-25 21:01 [patch net-next 0/9] net: sched: introduce chain templates support with offloading to mlxsw Jiri Pirko
2018-06-25 21:01 ` [patch net-next 1/9] net: sched: push ops lookup bits into tcf_proto_lookup_ops() Jiri Pirko
2018-06-25 21:01 ` [patch net-next 2/9] net: sched: introduce chain templates Jiri Pirko
2018-06-25 21:01 ` [patch net-next 3/9] net: sched: cls_flower: move key/mask dumping into a separate function Jiri Pirko
2018-06-25 21:01 ` [patch net-next 4/9] net: sched: cls_flower: change fl_init_dissector to accept mask and dissector Jiri Pirko
2018-06-25 21:01 ` [patch net-next 5/9] net: sched: cls_flower: implement chain templates Jiri Pirko
2018-06-25 21:01 ` [patch net-next 6/9] net: sched: cls_flower: propagate chain teplate creation and destruction to drivers Jiri Pirko
2018-06-26  5:00   ` Jakub Kicinski [this message]
2018-06-26  6:40     ` Jiri Pirko
2018-06-25 21:01 ` [patch net-next 7/9] mlxsw: spectrum: Implement chain template hinting Jiri Pirko
2018-06-25 21:01 ` [patch net-next 8/9] selftests: forwarding: move shblock tc support check to a separate helper Jiri Pirko
2018-06-25 21:01 ` [patch net-next 9/9] selftests: forwarding: add tests for TC chain templates Jiri Pirko
2018-06-25 21:03 ` [patch iproute2/net-next] tc: introduce support for " Jiri Pirko
2018-06-26  4:58 ` [patch net-next 0/9] net: sched: introduce chain templates support with offloading to mlxsw Jakub Kicinski
2018-06-26  6:43   ` Jiri Pirko
2018-06-26  7:00     ` Jakub Kicinski
2018-06-26  7:12       ` Jiri Pirko
2018-06-26 21:18         ` Jakub Kicinski
2018-06-27  7:50           ` Jiri Pirko
2018-06-27 16:46             ` Samudrala, Sridhar
2018-06-27 17:04               ` Cong Wang
2018-06-28  6:18                 ` Jiri Pirko
2018-06-28 17:32                   ` Cong Wang
2018-06-27 18:36             ` Jakub Kicinski
2018-06-28  6:15               ` Jiri Pirko

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=20180625220050.0ff6d44c@cakuba.netronome.com \
    --to=jakub.kicinski@netronome.com \
    --cc=davem@davemloft.net \
    --cc=dsahern@gmail.com \
    --cc=jhs@mojatatu.com \
    --cc=jiri@resnulli.us \
    --cc=john.hurley@netronome.com \
    --cc=mlxsw@mellanox.com \
    --cc=netdev@vger.kernel.org \
    --cc=simon.horman@netronome.com \
    --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.