netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Vlad Buslov <vladbu@mellanox.com>
To: Marcelo Ricardo Leitner <mleitner@redhat.com>
Cc: Vlad Buslov <vladbu@mellanox.com>,
	"netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	"jhs@mojatatu.com" <jhs@mojatatu.com>,
	"xiyou.wangcong@gmail.com" <xiyou.wangcong@gmail.com>,
	"jiri@resnulli.us" <jiri@resnulli.us>,
	"davem@davemloft.net" <davem@davemloft.net>,
	"dcaratti@redhat.com" <dcaratti@redhat.com>
Subject: Re: [PATCH net-next 00/13] Control action percpu counters allocation by netlink flag
Date: Wed, 23 Oct 2019 06:42:06 +0000	[thread overview]
Message-ID: <vbfimogvu84.fsf@mellanox.com> (raw)
In-Reply-To: <20191022170947.GA4321@localhost.localdomain>


On Tue 22 Oct 2019 at 20:09, Marcelo Ricardo Leitner <mleitner@redhat.com> wrote:
> On Tue, Oct 22, 2019 at 03:52:31PM +0000, Vlad Buslov wrote:
>>
>> On Tue 22 Oct 2019 at 18:15, Marcelo Ricardo Leitner <mleitner@redhat.com> wrote:
>> > On Tue, Oct 22, 2019 at 05:17:51PM +0300, Vlad Buslov wrote:
>> >> - Extend actions that are used for hardware offloads with optional
>> >>   netlink 32bit flags field. Add TCA_ACT_FLAGS_FAST_INIT action flag and
>> >>   update affected actions to not allocate percpu counters when the flag
>> >>   is set.
>> >
>> > I just went over all the patches and they mostly make sense to me. So
>> > far the only point I'm uncertain of is the naming of the flag,
>> > "fast_init".  That is not clear on what it does and can be overloaded
>> > with other stuff later and we probably don't want that.
>>
>> I intentionally named it like that because I do want to overload it with
>> other stuff in future, instead of adding new flag value for every single
>> small optimization we might come up with :)
>
> Hah :-)
>
>>
>> Also, I didn't want to hardcode implementation details into UAPI that we
>> will have to maintain for long time after percpu allocator in kernel is
>> potentially replaced with something new and better (like idr is being
>> replaced with xarray now, for example)
>
> I see. OTOH, this also means that the UAPI here would be unstable
> (different meanings over time for the same call), and hopefully new
> behaviors would always be backwards compatible.

This flag doesn't change any userland-visible behavior, just suggests
different performance trade off (insertion rate for sw packet processing
speed). Counters continue to work with or without the flag. Any
optimization that actually modifies cls or act API behavior will have to
use dedicated flag value.

>
>>
>> Anyway, lets see what other people think. I'm open to changing it.
>>
>> >
>> > Say, for example, we want percpu counters but to disable allocating
>> > the stats for hw, to make the counter in 28169abadb08 ("net/sched: Add
>> > hardware specific counters to TC actions") optional.
>> >
>> > So what about:
>> > TCA_ACT_FLAGS_NO_PERCPU_STATS
>> > TCA_ACT_FLAGS_NO_HW_STATS (this one to be done on a subsequent patchset, yes)
>> > ?
>> >
>> >   Marcelo
>>

  reply	other threads:[~2019-10-23  6:42 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 [this message]
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
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=vbfimogvu84.fsf@mellanox.com \
    --to=vladbu@mellanox.com \
    --cc=davem@davemloft.net \
    --cc=dcaratti@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).