From: Vlad Buslov <vladbu@mellanox.com>
To: Jamal Hadi Salim <jhs@mojatatu.com>
Cc: Vlad Buslov <vladbu@mellanox.com>, Jiri Pirko <jiri@resnulli.us>,
"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
"xiyou.wangcong@gmail.com" <xiyou.wangcong@gmail.com>,
"davem@davemloft.net" <davem@davemloft.net>,
"mleitner@redhat.com" <mleitner@redhat.com>,
"dcaratti@redhat.com" <dcaratti@redhat.com>,
Eric Dumazet <edumazet@google.com>
Subject: Re: [PATCH net-next 00/13] Control action percpu counters allocation by netlink flag
Date: Fri, 25 Oct 2019 16:53:05 +0000 [thread overview]
Message-ID: <vbfmudou5qp.fsf@mellanox.com> (raw)
In-Reply-To: <07a6ceec-3a87-44cb-f92d-6a6d9d9bef81@mojatatu.com>
On Fri 25 Oct 2019 at 19:29, Jamal Hadi Salim <jhs@mojatatu.com> wrote:
> On 2019-10-25 12:10 p.m., Vlad Buslov wrote:
>>
>
>>> Hold on. Looking more at the code, direct call for tcf_action_init_1()
>>> from the cls code path is for backward compat of old policer approach.
>>> I think even modern iproute2 doesnt support that kind of call
>>> anymore. So you can pass NULL there for the *flags.
>>
>> But having the FAST_INIT flag set when creating actions through cls API
>> is my main use case. Are you suggesting to only have flags when actions
>> created through act API?
>>
>
> Not at all. Here's my thinking...
>
> I didnt see your iproute2 change; however, in user space - i think all
> the classifiers eventually call parse_action()? You can stick the flags
> there under TCA_ACT_ROOT_FLAGS
>
> In the kernel, tcf_exts_validate() - two spots:
> tcf_action_init_1() pass NULL
> tcf_action_init() before invocation extract the TCA_ACT_ROOT_FLAGS
> (similar to the act_api approach).
>
> Am i missing something? Sorry - dont have much cycles right now
> but i could do a prototype later.
>
> cheers,
> jamal
I don't exactly follow. In case of act API we have following call chain:
tc_ctl_action()->tcf_action_add()->tcf_action_init(). In this case
TCA_ROOT is parsed in tc_ctl_action() and tcf_action_init() is called
with one of its nested attributes - tca[TCA_ACT_TAB]. When
tcf_action_init() is called TCA_ROOT is already "parsed out", but it is
easy to pass it as an argument.
For cls API lets take flower as an example: fl_change() parses TCA_FLOWER, and calls
fl_set_parms()->tcf_exts_validate()->tcf_action_init() with
TCA_FLOWER_ACT nested attribute. No TCA_ROOT is expected, TCA_FLOWER_ACT
contains up to TCA_ACT_MAX_PRIO nested TCA_ACT attributes. So where can
I include it without breaking backward compatibility?
Regards,
Vlad
next prev parent reply other threads:[~2019-10-25 16:53 UTC|newest]
Thread overview: 64+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-22 14:17 [PATCH net-next 00/13] Control action percpu counters allocation by netlink flag Vlad Buslov
2019-10-22 14:17 ` [PATCH net-next 01/13] net: sched: extract common action counters update code into function Vlad Buslov
2019-10-22 14:17 ` [PATCH net-next 02/13] net: sched: extract bstats " Vlad Buslov
2019-10-22 14:17 ` [PATCH net-next 03/13] net: sched: extract qstats update code into functions Vlad Buslov
2019-10-22 14:17 ` [PATCH net-next 04/13] net: sched: don't expose action qstats to skb_tc_reinsert() Vlad Buslov
2019-10-22 14:17 ` [PATCH net-next 05/13] net: sched: modify stats helper functions to support regular stats Vlad Buslov
2019-10-22 14:17 ` [PATCH net-next 06/13] net: sched: add action fast initialization flag Vlad Buslov
2019-10-22 14:17 ` [PATCH net-next 07/13] net: sched: act_gact: support fast init flag to skip pcpu allocation Vlad Buslov
2019-10-22 14:17 ` [PATCH net-next 08/13] net: sched: act_csum: " Vlad Buslov
2019-10-22 14:18 ` [PATCH net-next 09/13] net: sched: act_mirred: support fast init flag to skip pcpu alloc Vlad Buslov
2019-10-22 14:18 ` [PATCH net-next 10/13] net: sched: tunnel_key: " Vlad Buslov
2019-10-22 14:18 ` [PATCH net-next 11/13] net: sched: act_vlan: support fast init flag to skip pcpu allocation Vlad Buslov
2019-10-22 14:18 ` [PATCH net-next 12/13] net: sched: act_ct: " Vlad Buslov
2019-10-22 14:18 ` [PATCH net-next 13/13] tc-testing: implement tests for new fast_init action flag Vlad Buslov
2019-10-22 14:28 ` [PATCH iproute2-next] tc: implement support for action flags Vlad Buslov
2019-10-22 14:35 ` [PATCH net-next 00/13] Control action percpu counters allocation by netlink flag Marcelo Ricardo Leitner
2019-10-22 14:52 ` Vlad Buslov
2019-10-22 18:17 ` Roman Mashak
2019-10-23 6:38 ` Vlad Buslov
2019-10-23 13:02 ` Jamal Hadi Salim
2019-10-23 13:08 ` Vlad Buslov
2019-10-22 15:15 ` Marcelo Ricardo Leitner
2019-10-22 15:52 ` Vlad Buslov
2019-10-22 17:09 ` Marcelo Ricardo Leitner
2019-10-23 6:42 ` Vlad Buslov
2019-10-24 15:12 ` Roopa Prabhu
2019-10-24 15:18 ` Vlad Buslov
2019-10-24 17:31 ` Marcelo Ricardo Leitner
2019-10-24 18:03 ` Vlad Buslov
2019-10-23 12:49 ` Jamal Hadi Salim
2019-10-23 13:04 ` Vlad Buslov
2019-10-23 14:21 ` Jamal Hadi Salim
2019-10-23 15:04 ` Vlad Buslov
2019-10-24 7:35 ` Jiri Pirko
2019-10-24 15:23 ` Vlad Buslov
2019-10-24 16:12 ` Jamal Hadi Salim
2019-10-24 16:44 ` Vlad Buslov
2019-10-24 17:17 ` Jamal Hadi Salim
2019-10-24 18:05 ` Vlad Buslov
2019-10-25 11:46 ` Jamal Hadi Salim
2019-10-25 11:55 ` Vlad Buslov
2019-10-25 14:26 ` Vlad Buslov
2019-10-25 14:57 ` Jamal Hadi Salim
2019-10-25 15:08 ` Jamal Hadi Salim
2019-10-25 15:18 ` Vlad Buslov
2019-10-25 15:43 ` Jamal Hadi Salim
2019-10-25 16:06 ` Jamal Hadi Salim
2019-10-25 16:10 ` Vlad Buslov
2019-10-25 16:29 ` Jamal Hadi Salim
2019-10-25 16:53 ` Vlad Buslov [this message]
2019-10-25 18:17 ` Jamal Hadi Salim
2019-10-25 21:05 ` Jamal Hadi Salim
2019-10-25 21:10 ` Jamal Hadi Salim
2019-10-25 21:52 ` Jamal Hadi Salim
2019-10-26 9:44 ` Vlad Buslov
2019-10-26 12:26 ` Jamal Hadi Salim
2019-10-26 14:52 ` Roman Mashak
2019-10-26 16:06 ` Jamal Hadi Salim
2019-10-26 16:42 ` Vlad Buslov
2019-10-26 18:38 ` Jamal Hadi Salim
2019-10-27 8:31 ` Vlad Buslov
2019-10-27 9:13 ` Jamal Hadi Salim
2019-10-25 16:27 ` Vlad Buslov
2019-10-25 16:08 ` Vlad Buslov
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=vbfmudou5qp.fsf@mellanox.com \
--to=vladbu@mellanox.com \
--cc=davem@davemloft.net \
--cc=dcaratti@redhat.com \
--cc=edumazet@google.com \
--cc=jhs@mojatatu.com \
--cc=jiri@resnulli.us \
--cc=mleitner@redhat.com \
--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.