rdma: Introduce command execution helper with required device name

In contradiction to various show commands, the set command explicitly
requires to use device name as an argument. Provide new command
execution helper which enforces it.

Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
Reviewed-by: Steve Wise <swise@opengridcomputing.com>
Signed-off-by: David Ahern <dsahern@gmail.com>
This commit is contained in:
Leon Romanovsky 2018-10-31 09:17:56 +02:00 committed by David Ahern
parent 3fb00075d9
commit a14ceed325
2 changed files with 11 additions and 0 deletions

View File

@ -90,6 +90,7 @@ int cmd_link(struct rd *rd);
int cmd_res(struct rd *rd);
int rd_exec_cmd(struct rd *rd, const struct rd_cmd *c, const char *str);
int rd_exec_dev(struct rd *rd, int (*cb)(struct rd *rd));
int rd_exec_require_dev(struct rd *rd, int (*cb)(struct rd *rd));
int rd_exec_link(struct rd *rd, int (*cb)(struct rd *rd), bool strict_port);
void rd_free(struct rd *rd);
int rd_set_arg_to_devname(struct rd *rd);

View File

@ -577,6 +577,16 @@ out:
return ret;
}
int rd_exec_require_dev(struct rd *rd, int (*cb)(struct rd *rd))
{
if (rd_no_arg(rd)) {
pr_err("Please provide device name.\n");
return -EINVAL;
}
return rd_exec_dev(rd, cb);
}
int rd_exec_cmd(struct rd *rd, const struct rd_cmd *cmds, const char *str)
{
const struct rd_cmd *c;