print_smc_diag_cursor(&(where_).field_); \
} while (0)
-#define PRINT_FIELD_SMC_DIAG_CONNINFO_FLAGS(prefix_, where_, field_) \
- tprintf("%s%s=%#0*x", \
- (prefix_), #field_, \
- (int) sizeof(where_).field_, (where_).field_)
-
static bool
decode_smc_diag_conninfo(struct tcb *const tcp,
const kernel_ulong_t addr,
PRINT_FIELD_SMC_DIAG_CURSOR(", ", cinfo, rx_cons);
PRINT_FIELD_SMC_DIAG_CURSOR(", ", cinfo, tx_prod);
PRINT_FIELD_SMC_DIAG_CURSOR(", ", cinfo, tx_cons);
- PRINT_FIELD_SMC_DIAG_CONNINFO_FLAGS(", ", cinfo, rx_prod_flags);
- PRINT_FIELD_SMC_DIAG_CONNINFO_FLAGS(", ", cinfo, rx_conn_state_flags);
- PRINT_FIELD_SMC_DIAG_CONNINFO_FLAGS(", ", cinfo, tx_prod_flags);
- PRINT_FIELD_SMC_DIAG_CONNINFO_FLAGS(", ", cinfo, tx_conn_state_flags);
+ PRINT_FIELD_0X(", ", cinfo, rx_prod_flags);
+ PRINT_FIELD_0X(", ", cinfo, rx_conn_state_flags);
+ PRINT_FIELD_0X(", ", cinfo, tx_prod_flags);
+ PRINT_FIELD_0X(", ", cinfo, tx_conn_state_flags);
PRINT_FIELD_SMC_DIAG_CURSOR(", ", cinfo, tx_prep);
PRINT_FIELD_SMC_DIAG_CURSOR(", ", cinfo, tx_sent);
PRINT_FIELD_SMC_DIAG_CURSOR(", ", cinfo, tx_fin);
STRACE_PRINTF("%s%s=%#llx", (prefix_), #field_, \
zero_extend_signed_to_ull((where_).field_))
+#define PRINT_FIELD_0X(prefix_, where_, field_) \
+ STRACE_PRINTF("%s%s=%#0*llx", (prefix_), #field_, \
+ (int) sizeof((where_).field_) * 2, \
+ zero_extend_signed_to_ull((where_).field_))
+
#define PRINT_FIELD_COOKIE(prefix_, where_, field_) \
STRACE_PRINTF("%s%s=[%llu, %llu]", (prefix_), #field_, \
zero_extend_signed_to_ull((where_).field_[0]), \
tprintf("%s%#02x", i ? ", " : "",
sa_ipx->sipx_node[i]);
}
- tprintf("], sipx_type=%#02x", sa_ipx->sipx_type);
+ PRINT_FIELD_0X("], ", *sa_ipx, sipx_type);
}
static void
{
const struct sockaddr_nl *const sa_nl = buf;
- tprintf("nl_pid=%d, nl_groups=%#08x",
- sa_nl->nl_pid, sa_nl->nl_groups);
+ PRINT_FIELD_D("", *sa_nl, nl_pid);
+ PRINT_FIELD_0X(", ", *sa_nl, nl_groups);
}
static void