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-next>] [day] [month] [year] [list]
Message-Id: <20220407073533.2422896-1-idosch@nvidia.com>
Date:   Thu,  7 Apr 2022 10:35:19 +0300
From:   Ido Schimmel <idosch@...dia.com>
To:     netdev@...r.kernel.org
Cc:     davem@...emloft.net, kuba@...nel.org, pabeni@...hat.com,
        jhs@...atatu.com, xiyou.wangcong@...il.com, jiri@...nulli.us,
        petrm@...dia.com, jianbol@...dia.com, roid@...dia.com,
        vladbu@...dia.com, olteanv@...il.com, simon.horman@...igine.com,
        baowen.zheng@...igine.com, marcelo.leitner@...il.com,
        Ido Schimmel <idosch@...dia.com>
Subject: [PATCH net-next 00/14] net/sched: Better error reporting for offload failures

This patchset improves error reporting to user space when offload fails
during the flow action setup phase. That is, when failures occur in the
actions themselves, even before calling device drivers. Requested /
reported in [1].

This is done by passing extack to the offload_act_setup() callback and
making use of it in the various actions.

Patches #1-#2 change matchall and flower to log error messages to user
space in accordance with the verbose flag.

Patch #3 passes extack to the offload_act_setup() callback from the
various call sites, including matchall and flower.

Patches #4-#11 make use of extack in the various actions to report
offload failures.

Patch #12 adds an error message when the action does not support offload
at all.

Patches #13-#14 change matchall and flower to stop overwriting more
specific error messages.

[1] https://lore.kernel.org/netdev/20220317185249.5mff5u2x624pjewv@skbuf/

Ido Schimmel (14):
  net/sched: matchall: Take verbose flag into account when logging error
    messages
  net/sched: flower: Take verbose flag into account when logging error
    messages
  net/sched: act_api: Add extack to offload_act_setup() callback
  net/sched: act_gact: Add extack messages for offload failure
  net/sched: act_mirred: Add extack message for offload failure
  net/sched: act_mpls: Add extack messages for offload failure
  net/sched: act_pedit: Add extack message for offload failure
  net/sched: act_police: Add extack messages for offload failure
  net/sched: act_skbedit: Add extack messages for offload failure
  net/sched: act_tunnel_key: Add extack message for offload failure
  net/sched: act_vlan: Add extack message for offload failure
  net/sched: cls_api: Add extack message for unsupported action offload
  net/sched: matchall: Avoid overwriting error messages
  net/sched: flower: Avoid overwriting error messages

 include/net/act_api.h           |  3 ++-
 include/net/pkt_cls.h           |  6 ++++--
 include/net/tc_act/tc_gact.h    | 15 +++++++++++++++
 include/net/tc_act/tc_skbedit.h | 12 ++++++++++++
 net/sched/act_api.c             |  4 ++--
 net/sched/act_csum.c            |  3 ++-
 net/sched/act_ct.c              |  3 ++-
 net/sched/act_gact.c            | 13 ++++++++++++-
 net/sched/act_gate.c            |  3 ++-
 net/sched/act_mirred.c          |  4 +++-
 net/sched/act_mpls.c            | 10 +++++++++-
 net/sched/act_pedit.c           |  4 +++-
 net/sched/act_police.c          | 20 ++++++++++++++++----
 net/sched/act_sample.c          |  3 ++-
 net/sched/act_skbedit.c         | 10 +++++++++-
 net/sched/act_tunnel_key.c      |  4 +++-
 net/sched/act_vlan.c            |  4 +++-
 net/sched/cls_api.c             | 22 ++++++++++++++--------
 net/sched/cls_flower.c          | 14 ++++++--------
 net/sched/cls_matchall.c        | 19 +++++++------------
 20 files changed, 128 insertions(+), 48 deletions(-)

-- 
2.33.1

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ