lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Sat, 4 May 2019 02:23:27 -0400
From:   Jakub Kicinski <jakub.kicinski@...ronome.com>
To:     Edward Cree <ecree@...arflare.com>
Cc:     Jamal Hadi Salim <jhs@...atatu.com>, Jiri Pirko <jiri@...nulli.us>,
        "Pablo Neira Ayuso" <pablo@...filter.org>,
        David Miller <davem@...emloft.net>,
        netdev <netdev@...r.kernel.org>,
        Cong Wang <xiyou.wangcong@...il.com>,
        Andy Gospodarek <andy@...yhouse.net>,
        Anjali Singhai Jain <anjali.singhai@...el.com>,
        "Or Gerlitz" <gerlitz.or@...il.com>
Subject: Re: [RFC PATCH net-next 0/3] flow_offload: Re-add various features
 that disappeared

On Fri, 3 May 2019 15:59:28 +0100, Edward Cree wrote:
> When the flow_offload infrastructure was added, a couple of things that
>  were previously possible for drivers to support in TC offload were not
>  plumbed through, perhaps because the drivers in the tree did not fully
>  or correctly implement them.
> The main issue was with statistics; in TC (and in the previous offload
>  API) statistics are per-action, though generally only on 'delivery'
>  actions like mirred, ok and shot.  Actions also have an index, which
>  may be supplied by the user, which allows the sharing of entities such
>  as counters between multiple rules.  The existing driver implementations
>  did not support this, however, instead allocating a single counter per
>  rule.  The flow_offload API did not support this either, as (a) the
>  action index never reached the driver, and (b) the TC_CLSFLOWER_STATS
>  callback was only able to return a single set of stats which were added
>  to all counters for actions on the rule.  Patch #1 of this series fixes
>  (a) by storing tcfa_index in a new action_index member of struct
>  flow_action_entry, while patch #2 fixes (b) by adding a new callback,
>  TC_CLSFLOWER_STATS_BYINDEX, which retrieves statistics for a specified
>  action_index rather than by rule (although the rule cookie is still   
>  passed as well).
> Patch #3 adds flow_rule_match_cvlan(), analogous to
>  flow_rule_match_vlan() but accessing FLOW_DISSECTOR_KEY_CVLAN instead
>  of FLOW_DISSECTOR_KEY_VLAN, to allow offloading inner VLAN matches.
> This patch series does not include any users of these new interfaces;   
>  the driver in which I hope to use them does not yet exist upstream as  
>  it is for hardware which is still under development.  However I've CCed
>  developers of various other drivers that implement TC offload, in case
>  any of them want to implement support.  Otherwise I imagine that David
>  won't be willing to take this without a user, in which case I'll save
>  it to submit alongside the aforementioned unfinished driver (hence the
>  RFC tags for now).

Thanks for making this clear, I'd also like to make a disclaimer
that my comments on the patches are not an indication that I think 
these patches are worth merging right now :)

> Edward Cree (3):
>   flow_offload: copy tcfa_index into flow_action_entry
>   flow_offload: restore ability to collect separate stats per action
>   flow_offload: support CVLAN match
> 
>  include/net/flow_offload.h |  3 +++
>  include/net/pkt_cls.h      |  2 ++
>  net/core/flow_offload.c    |  7 +++++++
>  net/sched/cls_api.c        |  1 +
>  net/sched/cls_flower.c     | 30 ++++++++++++++++++++++++++++++
>  5 files changed, 43 insertions(+)

Powered by blists - more mailing lists