]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
devlink: add devlink_fmsg_put() macro
authorPrzemek Kitszel <przemyslaw.kitszel@intel.com>
Mon, 16 Dec 2024 14:15:31 +0000 (15:15 +0100)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Tue, 17 Dec 2024 17:32:08 +0000 (09:32 -0800)
Add devlink_fmsg_put() that dispatches based on the type
of the value to put, example: bool -> devlink_fmsg_bool_pair_put().

Reviewed-by: Wojciech Drewek <wojciech.drewek@intel.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: Mateusz Polchlopek <mateusz.polchlopek@intel.com>
Tested-by: Pucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com> (A Contingent worker at Intel)
Signed-off-by: Przemek Kitszel <przemyslaw.kitszel@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
include/net/devlink.h

index fbb9a2668e247479a302f86ffeafb7128665e578..b5e1427ea4d7211623cb9e45ee6da5d7bcbacfbb 100644 (file)
@@ -1261,6 +1261,17 @@ enum devlink_trap_group_generic_id {
                .min_burst = _min_burst,                                      \
        }
 
+#define devlink_fmsg_put(fmsg, name, value) (                  \
+       _Generic((value),                                       \
+               bool :          devlink_fmsg_bool_pair_put,     \
+               u8 :            devlink_fmsg_u8_pair_put,       \
+               u16 :           devlink_fmsg_u32_pair_put,      \
+               u32 :           devlink_fmsg_u32_pair_put,      \
+               u64 :           devlink_fmsg_u64_pair_put,      \
+               char * :        devlink_fmsg_string_pair_put,   \
+               const char * :  devlink_fmsg_string_pair_put)   \
+       (fmsg, name, (value)))
+
 enum {
        /* device supports reload operations */
        DEVLINK_F_RELOAD = 1UL << 0,