From: Eugene Syromyatnikov Date: Sun, 19 Aug 2018 09:56:21 +0000 (+0200) Subject: netlink_smc_diag: decode smc_diag_msg.diag_fallback constant names X-Git-Tag: v4.25~67 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f7d175b562bda6c36f5d7303e497d0fd7cbf4cdd;p=strace netlink_smc_diag: decode smc_diag_msg.diag_fallback constant names Introduced by Linux commit v4.19-rc1~140^2~285^2~4. * xlat/smc_diag_mode.in: New file. * netlink_smc_diag.c: Include "xlat/smc_diag_mode.h". (decode_smc_diag_msg): Print diag_fallback field using smc_diag_mode xlat. * tests/netlink_sock_diag.c (test_smc_diag_msg): Update expected output. * tests/nlattr_smc_diag_msg.c (print_smc_diag_msg): Likewise. --- diff --git a/netlink_smc_diag.c b/netlink_smc_diag.c index 42369ad8..c2e2c66a 100644 --- a/netlink_smc_diag.c +++ b/netlink_smc_diag.c @@ -45,6 +45,7 @@ #include "xlat/smc_diag_attrs.h" #include "xlat/smc_diag_extended_flags.h" +#include "xlat/smc_diag_mode.h" #include "xlat/smc_link_group_roles.h" #include "xlat/smc_states.h" @@ -190,7 +191,9 @@ DECL_NETLINK_DIAG_DECODER(decode_smc_diag_msg) (void *) &msg + offset)) { PRINT_FIELD_XVAL("", msg, diag_state, smc_states, "SMC_???"); - PRINT_FIELD_U(", ", msg, diag_fallback); + PRINT_FIELD_XVAL_INDEX(", ", msg, diag_fallback, + smc_diag_mode, + "SMC_DIAG_MODE_???"); PRINT_FIELD_U(", ", msg, diag_shutdown); /* * AF_SMC protocol family socket handler diff --git a/tests/netlink_sock_diag.c b/tests/netlink_sock_diag.c index 880069f3..dfe35264 100644 --- a/tests/netlink_sock_diag.c +++ b/tests/netlink_sock_diag.c @@ -609,7 +609,7 @@ test_smc_diag_msg(const int fd) struct smc_diag_msg msg = { .diag_family = AF_SMC, .diag_state = SMC_ACTIVE, - .diag_fallback = 0xde, + .diag_fallback = 0x1, .diag_shutdown = 0xba, .id = { .idiag_sport = 0xdead, @@ -630,7 +630,7 @@ test_smc_diag_msg(const int fd) SOCK_DIAG_BY_FAMILY, NLM_F_DUMP, msg, printf("{diag_family=AF_SMC"), printf(", diag_state=SMC_ACTIVE"); - PRINT_FIELD_U(", ", msg, diag_fallback); + printf(", diag_fallback=SMC_DIAG_MODE_FALLBACK_TCP"); PRINT_FIELD_U(", ", msg, diag_shutdown); printf(", id={idiag_sport=htons(%u)" ", idiag_dport=htons(%u)" diff --git a/tests/nlattr_smc_diag_msg.c b/tests/nlattr_smc_diag_msg.c index 227ade03..13890275 100644 --- a/tests/nlattr_smc_diag_msg.c +++ b/tests/nlattr_smc_diag_msg.c @@ -77,7 +77,7 @@ print_smc_diag_msg(const unsigned int msg_len) printf("{len=%u, type=SOCK_DIAG_BY_FAMILY" ", flags=NLM_F_DUMP, seq=0, pid=0}" ", {diag_family=AF_SMC, diag_state=SMC_ACTIVE" - ", diag_fallback=0, diag_shutdown=0" + ", diag_fallback=SMC_DIAG_MODE_SMCR, diag_shutdown=0" ", id={idiag_sport=htons(0), idiag_dport=htons(0)" ", idiag_src=inet_addr(\"%s\")" ", idiag_dst=inet_addr(\"%s\")" diff --git a/xlat/smc_diag_mode.in b/xlat/smc_diag_mode.in new file mode 100644 index 00000000..4ac39639 --- /dev/null +++ b/xlat/smc_diag_mode.in @@ -0,0 +1,4 @@ +#value_indexed +SMC_DIAG_MODE_SMCR 0 +SMC_DIAG_MODE_FALLBACK_TCP 1 +SMC_DIAG_MODE_SMCD 2