]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commit
sched: add new attr TCA_EXT_WARN_MSG to report tc extact message
authorHangbin Liu <liuhangbin@gmail.com>
Fri, 13 Jan 2023 03:43:53 +0000 (11:43 +0800)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 17 Jan 2023 08:38:33 +0000 (09:38 +0100)
commit0349b8779cc949ad9e6aced32672ee48cf79b497
tree11afa6c0c4443e9b5c75d182f724fb41dbbf3950
parent86ce04f39b3013b99e85412a615b4cdd616c85cd
sched: add new attr TCA_EXT_WARN_MSG to report tc extact message

We will report extack message if there is an error via netlink_ack(). But
if the rule is not to be exclusively executed by the hardware, extack is not
passed along and offloading failures don't get logged.

In commit 81c7288b170a ("sched: cls: enable verbose logging") Marcelo
made cls could log verbose info for offloading failures, which helps
improving Open vSwitch debuggability when using flower offloading.

It would also be helpful if userspace monitor tools, like "tc monitor",
could log this kind of message, as it doesn't require vswitchd log level
adjusment. Let's add a new tc attributes to report the extack message so
the monitor program could receive the failures. e.g.

  # tc monitor
  added chain dev enp3s0f1np1 parent ffff: chain 0
  added filter dev enp3s0f1np1 ingress protocol all pref 49152 flower chain 0 handle 0x1
    ct_state +trk+new
    not_in_hw
          action order 1: gact action drop
           random type none pass val 0
           index 1 ref 1 bind 1

  Warning: mlx5_core: matching on ct_state +new isn't supported.

In this patch I only report the extack message on add/del operations.
It doesn't look like we need to report the extack message on get/dump
operations.

Note this message not only reporte to multicast groups, it could also
be reported unicast, which may affect the current usersapce tool's behaivor.

Suggested-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Acked-by: Jakub Kicinski <kuba@kernel.org>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Link: https://lore.kernel.org/r/20230113034353.2766735-1-liuhangbin@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
include/uapi/linux/rtnetlink.h
net/sched/act_api.c
net/sched/cls_api.c
net/sched/sch_api.c