rdma: Simplify code to reuse existing functions
Remove duplicated functions in favour general res_print_uint() call. Reviewed-by: Steve Wise <swise@opengridcomputing.com> Signed-off-by: Leon Romanovsky <leonro@mellanox.com> Signed-off-by: David Ahern <dsahern@gmail.com>
This commit is contained in:
parent
835d83216b
commit
05846c9cd3
|
|
@ -227,12 +227,12 @@ int res_cm_id_parse_cb(const struct nlmsghdr *nlh, void *data)
|
||||||
|
|
||||||
print_link(rd, idx, name, port, nla_line);
|
print_link(rd, idx, name, port, nla_line);
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_LQPN])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_LQPN])
|
||||||
print_lqpn(rd, lqpn);
|
res_print_uint(rd, "lqpn", lqpn);
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_TYPE])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_TYPE])
|
||||||
print_qp_type(rd, type);
|
print_qp_type(rd, type);
|
||||||
print_cm_id_state(rd, state);
|
print_cm_id_state(rd, state);
|
||||||
print_ps(rd, ps);
|
print_ps(rd, ps);
|
||||||
print_pid(rd, pid);
|
res_print_uint(rd, "pid", pid);
|
||||||
print_comm(rd, comm, nla_line);
|
print_comm(rd, comm, nla_line);
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_CM_IDN])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_CM_IDN])
|
||||||
res_print_uint(rd, "cm-idn", cm_idn);
|
res_print_uint(rd, "cm-idn", cm_idn);
|
||||||
|
|
|
||||||
|
|
@ -7,14 +7,6 @@
|
||||||
#include "res.h"
|
#include "res.h"
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
|
|
||||||
static void print_cqe(struct rd *rd, uint32_t val)
|
|
||||||
{
|
|
||||||
if (rd->json_output)
|
|
||||||
jsonw_uint_field(rd->jw, "cqe", val);
|
|
||||||
else
|
|
||||||
pr_out("cqe %u ", val);
|
|
||||||
}
|
|
||||||
|
|
||||||
static const char *poll_ctx_to_str(uint8_t idx)
|
static const char *poll_ctx_to_str(uint8_t idx)
|
||||||
{
|
{
|
||||||
static const char * const cm_id_states_str[] = {
|
static const char * const cm_id_states_str[] = {
|
||||||
|
|
@ -120,11 +112,11 @@ int res_cq_parse_cb(const struct nlmsghdr *nlh, void *data)
|
||||||
jsonw_start_array(rd->jw);
|
jsonw_start_array(rd->jw);
|
||||||
|
|
||||||
print_dev(rd, idx, name);
|
print_dev(rd, idx, name);
|
||||||
print_cqe(rd, cqe);
|
res_print_uint(rd, "cqe", cqe);
|
||||||
print_users(rd, users);
|
res_print_uint(rd, "users", users);
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_POLL_CTX])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_POLL_CTX])
|
||||||
print_poll_ctx(rd, poll_ctx);
|
print_poll_ctx(rd, poll_ctx);
|
||||||
print_pid(rd, pid);
|
res_print_uint(rd, "pid", pid);
|
||||||
print_comm(rd, comm, nla_line);
|
print_comm(rd, comm, nla_line);
|
||||||
|
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_CQN])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_CQN])
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,7 @@ int res_mr_parse_cb(const struct nlmsghdr *nlh, void *data)
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_IOVA])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_IOVA])
|
||||||
print_key(rd, "iova", iova);
|
print_key(rd, "iova", iova);
|
||||||
res_print_uint(rd, "mrlen", mrlen);
|
res_print_uint(rd, "mrlen", mrlen);
|
||||||
print_pid(rd, pid);
|
res_print_uint(rd, "pid", pid);
|
||||||
print_comm(rd, comm, nla_line);
|
print_comm(rd, comm, nla_line);
|
||||||
|
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_MRN])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_MRN])
|
||||||
|
|
|
||||||
|
|
@ -89,10 +89,10 @@ int res_pd_parse_cb(const struct nlmsghdr *nlh, void *data)
|
||||||
print_dev(rd, idx, name);
|
print_dev(rd, idx, name);
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_LOCAL_DMA_LKEY])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_LOCAL_DMA_LKEY])
|
||||||
print_key(rd, "local_dma_lkey", local_dma_lkey);
|
print_key(rd, "local_dma_lkey", local_dma_lkey);
|
||||||
print_users(rd, users);
|
res_print_uint(rd, "users", users);
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_UNSAFE_GLOBAL_RKEY])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_UNSAFE_GLOBAL_RKEY])
|
||||||
print_key(rd, "unsafe_global_rkey", unsafe_global_rkey);
|
print_key(rd, "unsafe_global_rkey", unsafe_global_rkey);
|
||||||
print_pid(rd, pid);
|
res_print_uint(rd, "pid", pid);
|
||||||
print_comm(rd, comm, nla_line);
|
print_comm(rd, comm, nla_line);
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_CTXN])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_CTXN])
|
||||||
res_print_uint(rd, "ctxn", ctxn);
|
res_print_uint(rd, "ctxn", ctxn);
|
||||||
|
|
|
||||||
|
|
@ -66,14 +66,6 @@ static void print_rqpsn(struct rd *rd, uint32_t val, struct nlattr **nla_line)
|
||||||
pr_out("rq-psn %u ", val);
|
pr_out("rq-psn %u ", val);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void print_sqpsn(struct rd *rd, uint32_t val)
|
|
||||||
{
|
|
||||||
if (rd->json_output)
|
|
||||||
jsonw_uint_field(rd->jw, "sq-psn", val);
|
|
||||||
else
|
|
||||||
pr_out("sq-psn %u ", val);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void print_pathmig(struct rd *rd, uint32_t val, struct nlattr **nla_line)
|
static void print_pathmig(struct rd *rd, uint32_t val, struct nlattr **nla_line)
|
||||||
{
|
{
|
||||||
if (!nla_line[RDMA_NLDEV_ATTR_RES_PATH_MIG_STATE])
|
if (!nla_line[RDMA_NLDEV_ATTR_RES_PATH_MIG_STATE])
|
||||||
|
|
@ -209,7 +201,7 @@ int res_qp_parse_cb(const struct nlmsghdr *nlh, void *data)
|
||||||
|
|
||||||
print_link(rd, idx, name, port, nla_line);
|
print_link(rd, idx, name, port, nla_line);
|
||||||
|
|
||||||
print_lqpn(rd, lqpn);
|
res_print_uint(rd, "lqpn", lqpn);
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_PDN])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_PDN])
|
||||||
res_print_uint(rd, "pdn", pdn);
|
res_print_uint(rd, "pdn", pdn);
|
||||||
print_rqpn(rd, rqpn, nla_line);
|
print_rqpn(rd, rqpn, nla_line);
|
||||||
|
|
@ -218,10 +210,10 @@ int res_qp_parse_cb(const struct nlmsghdr *nlh, void *data)
|
||||||
print_state(rd, state);
|
print_state(rd, state);
|
||||||
|
|
||||||
print_rqpsn(rd, rq_psn, nla_line);
|
print_rqpsn(rd, rq_psn, nla_line);
|
||||||
print_sqpsn(rd, sq_psn);
|
res_print_uint(rd, "sq-psn", sq_psn);
|
||||||
|
|
||||||
print_pathmig(rd, path_mig_state, nla_line);
|
print_pathmig(rd, path_mig_state, nla_line);
|
||||||
print_pid(rd, pid);
|
res_print_uint(rd, "pid", pid);
|
||||||
print_comm(rd, comm, nla_line);
|
print_comm(rd, comm, nla_line);
|
||||||
|
|
||||||
if (nla_line[RDMA_NLDEV_ATTR_RES_PID])
|
if (nla_line[RDMA_NLDEV_ATTR_RES_PID])
|
||||||
|
|
|
||||||
34
rdma/res.c
34
rdma/res.c
|
|
@ -35,7 +35,6 @@ static int res_print_summary(struct rd *rd, struct nlattr **tb)
|
||||||
|
|
||||||
mnl_attr_for_each_nested(nla_entry, nla_table) {
|
mnl_attr_for_each_nested(nla_entry, nla_table) {
|
||||||
struct nlattr *nla_line[RDMA_NLDEV_ATTR_MAX] = {};
|
struct nlattr *nla_line[RDMA_NLDEV_ATTR_MAX] = {};
|
||||||
char json_name[32];
|
|
||||||
|
|
||||||
err = mnl_attr_parse_nested(nla_entry, rd_attr_cb, nla_line);
|
err = mnl_attr_parse_nested(nla_entry, rd_attr_cb, nla_line);
|
||||||
if (err != MNL_CB_OK)
|
if (err != MNL_CB_OK)
|
||||||
|
|
@ -48,12 +47,7 @@ static int res_print_summary(struct rd *rd, struct nlattr **tb)
|
||||||
|
|
||||||
name = mnl_attr_get_str(nla_line[RDMA_NLDEV_ATTR_RES_SUMMARY_ENTRY_NAME]);
|
name = mnl_attr_get_str(nla_line[RDMA_NLDEV_ATTR_RES_SUMMARY_ENTRY_NAME]);
|
||||||
curr = mnl_attr_get_u64(nla_line[RDMA_NLDEV_ATTR_RES_SUMMARY_ENTRY_CURR]);
|
curr = mnl_attr_get_u64(nla_line[RDMA_NLDEV_ATTR_RES_SUMMARY_ENTRY_CURR]);
|
||||||
if (rd->json_output) {
|
res_print_uint(rd, name, curr);
|
||||||
snprintf(json_name, 32, "%s", name);
|
|
||||||
jsonw_lluint_field(rd->jw, json_name, curr);
|
|
||||||
} else {
|
|
||||||
pr_out("%s %"PRId64 " ", name, curr);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
@ -127,22 +121,6 @@ const char *qp_types_to_str(uint8_t idx)
|
||||||
return "UNKNOWN";
|
return "UNKNOWN";
|
||||||
}
|
}
|
||||||
|
|
||||||
void print_lqpn(struct rd *rd, uint32_t val)
|
|
||||||
{
|
|
||||||
if (rd->json_output)
|
|
||||||
jsonw_uint_field(rd->jw, "lqpn", val);
|
|
||||||
else
|
|
||||||
pr_out("lqpn %u ", val);
|
|
||||||
}
|
|
||||||
|
|
||||||
void print_pid(struct rd *rd, uint32_t val)
|
|
||||||
{
|
|
||||||
if (rd->json_output)
|
|
||||||
jsonw_uint_field(rd->jw, "pid", val);
|
|
||||||
else
|
|
||||||
pr_out("pid %u ", val);
|
|
||||||
}
|
|
||||||
|
|
||||||
void print_comm(struct rd *rd, const char *str, struct nlattr **nla_line)
|
void print_comm(struct rd *rd, const char *str, struct nlattr **nla_line)
|
||||||
{
|
{
|
||||||
char tmp[18];
|
char tmp[18];
|
||||||
|
|
@ -221,19 +199,11 @@ void print_key(struct rd *rd, const char *name, uint64_t val)
|
||||||
void res_print_uint(struct rd *rd, const char *name, uint64_t val)
|
void res_print_uint(struct rd *rd, const char *name, uint64_t val)
|
||||||
{
|
{
|
||||||
if (rd->json_output)
|
if (rd->json_output)
|
||||||
jsonw_uint_field(rd->jw, name, val);
|
jsonw_u64_field(rd->jw, name, val);
|
||||||
else
|
else
|
||||||
pr_out("%s %" PRIu64 " ", name, val);
|
pr_out("%s %" PRIu64 " ", name, val);
|
||||||
}
|
}
|
||||||
|
|
||||||
void print_users(struct rd *rd, uint64_t val)
|
|
||||||
{
|
|
||||||
if (rd->json_output)
|
|
||||||
jsonw_uint_field(rd->jw, "users", val);
|
|
||||||
else
|
|
||||||
pr_out("users %" PRIu64 " ", val);
|
|
||||||
}
|
|
||||||
|
|
||||||
RES_FUNC(res_no_args, RDMA_NLDEV_CMD_RES_GET, NULL, true);
|
RES_FUNC(res_no_args, RDMA_NLDEV_CMD_RES_GET, NULL, true);
|
||||||
|
|
||||||
static int res_show(struct rd *rd)
|
static int res_show(struct rd *rd)
|
||||||
|
|
|
||||||
|
|
@ -112,12 +112,9 @@ char *get_task_name(uint32_t pid);
|
||||||
void print_dev(struct rd *rd, uint32_t idx, const char *name);
|
void print_dev(struct rd *rd, uint32_t idx, const char *name);
|
||||||
void print_link(struct rd *rd, uint32_t idx, const char *name, uint32_t port,
|
void print_link(struct rd *rd, uint32_t idx, const char *name, uint32_t port,
|
||||||
struct nlattr **nla_line);
|
struct nlattr **nla_line);
|
||||||
void print_users(struct rd *rd, uint64_t val);
|
|
||||||
void print_key(struct rd *rd, const char *name, uint64_t val);
|
void print_key(struct rd *rd, const char *name, uint64_t val);
|
||||||
void res_print_uint(struct rd *rd, const char *name, uint64_t val);
|
void res_print_uint(struct rd *rd, const char *name, uint64_t val);
|
||||||
void print_pid(struct rd *rd, uint32_t val);
|
|
||||||
void print_comm(struct rd *rd, const char *str, struct nlattr **nla_line);
|
void print_comm(struct rd *rd, const char *str, struct nlattr **nla_line);
|
||||||
const char *qp_types_to_str(uint8_t idx);
|
const char *qp_types_to_str(uint8_t idx);
|
||||||
void print_lqpn(struct rd *rd, uint32_t val);
|
|
||||||
|
|
||||||
#endif /* _RDMA_TOOL_RES_H_ */
|
#endif /* _RDMA_TOOL_RES_H_ */
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue