mirror of
https://github.com/lkl/linux.git
synced 2025-12-19 16:13:19 +09:00
netlink: provide an ability to set default extack message
In netdev common pattern, extack pointer is forwarded to the drivers to be filled with error message. However, the caller can easily overwrite the filled message. Instead of adding multiple "if (!extack->_msg)" checks before any NL_SET_ERR_MSG() call, which appears after call to the driver, let's add new macro to common code. [1] https://lore.kernel.org/all/Y9Irgrgf3uxOjwUm@unreal Reviewed-by: Simon Horman <simon.horman@corigine.com> Reviewed-by: Nikolay Aleksandrov <razor@blackwall.org> Signed-off-by: Leon Romanovsky <leonro@nvidia.com> Link: https://lore.kernel.org/r/6993fac557a40a1973dfa0095107c3d03d40bec1.1675171790.git.leon@kernel.org Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
committed by
Jakub Kicinski
parent
62e395f82d
commit
028fb19c6b
@@ -130,6 +130,16 @@ struct netlink_ext_ack {
|
||||
#define NL_SET_ERR_MSG_FMT_MOD(extack, fmt, args...) \
|
||||
NL_SET_ERR_MSG_FMT((extack), KBUILD_MODNAME ": " fmt, ##args)
|
||||
|
||||
#define NL_SET_ERR_MSG_WEAK(extack, msg) do { \
|
||||
if ((extack) && !(extack)->_msg) \
|
||||
NL_SET_ERR_MSG((extack), msg); \
|
||||
} while (0)
|
||||
|
||||
#define NL_SET_ERR_MSG_WEAK_MOD(extack, msg) do { \
|
||||
if ((extack) && !(extack)->_msg) \
|
||||
NL_SET_ERR_MSG_MOD((extack), msg); \
|
||||
} while (0)
|
||||
|
||||
#define NL_SET_BAD_ATTR_POLICY(extack, attr, pol) do { \
|
||||
if ((extack)) { \
|
||||
(extack)->bad_attr = (attr); \
|
||||
|
||||
Reference in New Issue
Block a user