[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <cover.1666102698.git.ecree.xilinx@gmail.com>
Date: Tue, 18 Oct 2022 15:37:26 +0100
From: <edward.cree@....com>
To: <netdev@...r.kernel.org>, <linux-net-drivers@....com>
CC: <davem@...emloft.net>, <kuba@...nel.org>, <pabeni@...hat.com>,
<edumazet@...gle.com>, <habetsm.xilinx@...il.com>,
<johannes@...solutions.net>, <marcelo.leitner@...il.com>,
<jiri@...nulli.us>, Edward Cree <ecree.xilinx@...il.com>
Subject: [PATCH v3 net-next 0/3] netlink: formatted extacks
From: Edward Cree <ecree.xilinx@...il.com>
Currently, netlink extacks can only carry fixed string messages, which
is limiting when reporting failures in complex systems. This series
adds the ability to return printf-formatted messages, and uses it in
the sfc driver's TC offload code.
Formatted extack messages are limited in length to a fixed buffer size,
currently 80 characters. If the message exceeds this, the full message
will be logged (ratelimited) to the console and a truncated version
returned over netlink.
There is no change to the netlink uAPI; only internal kernel changes
are needed.
Changed in v3:
* altered string splicing in NL_SET_ERR_MSG_FMT to avoid storing the
format string twice in .rodata
* removed RFC tags
Changed in v2:
* fixed null-checking of extack (with break; as suggested by kuba)
* added logging of full string on truncation (Johannes)
Edward Cree (3):
netlink: add support for formatted extack messages
sfc: use formatted extacks instead of efx_tc_err()
sfc: remove 'log-tc-errors' ethtool private flag
drivers/net/ethernet/sfc/ef100_ethtool.c | 2 -
drivers/net/ethernet/sfc/ethtool_common.c | 37 ------------------
drivers/net/ethernet/sfc/ethtool_common.h | 2 -
drivers/net/ethernet/sfc/mae.c | 5 +--
drivers/net/ethernet/sfc/net_driver.h | 2 -
drivers/net/ethernet/sfc/tc.c | 47 ++++++++++-------------
drivers/net/ethernet/sfc/tc.h | 18 ---------
include/linux/netlink.h | 29 +++++++++++++-
8 files changed, 50 insertions(+), 92 deletions(-)
Powered by blists - more mailing lists