提交 636ea370 编写于 作者: K Kevin Wolf

block: Remove -errno return value from bdrv_assign_node_name

It takes an errp argument. That's enough for error handling.
Signed-off-by: NKevin Wolf <kwolf@redhat.com>
上级 acd7fdc6
...@@ -788,38 +788,36 @@ static int bdrv_open_flags(BlockDriverState *bs, int flags) ...@@ -788,38 +788,36 @@ static int bdrv_open_flags(BlockDriverState *bs, int flags)
return open_flags; return open_flags;
} }
static int bdrv_assign_node_name(BlockDriverState *bs, static void bdrv_assign_node_name(BlockDriverState *bs,
const char *node_name, const char *node_name,
Error **errp) Error **errp)
{ {
if (!node_name) { if (!node_name) {
return 0; return;
} }
/* empty string node name is invalid */ /* empty string node name is invalid */
if (node_name[0] == '\0') { if (node_name[0] == '\0') {
error_setg(errp, "Empty node name"); error_setg(errp, "Empty node name");
return -EINVAL; return;
} }
/* takes care of avoiding namespaces collisions */ /* takes care of avoiding namespaces collisions */
if (bdrv_find(node_name)) { if (bdrv_find(node_name)) {
error_setg(errp, "node-name=%s is conflicting with a device id", error_setg(errp, "node-name=%s is conflicting with a device id",
node_name); node_name);
return -EINVAL; return;
} }
/* takes care of avoiding duplicates node names */ /* takes care of avoiding duplicates node names */
if (bdrv_find_node(node_name)) { if (bdrv_find_node(node_name)) {
error_setg(errp, "Duplicate node name"); error_setg(errp, "Duplicate node name");
return -EINVAL; return;
} }
/* copy node name into the bs and insert it into the graph list */ /* copy node name into the bs and insert it into the graph list */
pstrcpy(bs->node_name, sizeof(bs->node_name), node_name); pstrcpy(bs->node_name, sizeof(bs->node_name), node_name);
QTAILQ_INSERT_TAIL(&graph_bdrv_states, bs, node_list); QTAILQ_INSERT_TAIL(&graph_bdrv_states, bs, node_list);
return 0;
} }
/* /*
...@@ -854,9 +852,10 @@ static int bdrv_open_common(BlockDriverState *bs, BlockDriverState *file, ...@@ -854,9 +852,10 @@ static int bdrv_open_common(BlockDriverState *bs, BlockDriverState *file,
trace_bdrv_open_common(bs, filename ?: "", flags, drv->format_name); trace_bdrv_open_common(bs, filename ?: "", flags, drv->format_name);
node_name = qdict_get_try_str(options, "node-name"); node_name = qdict_get_try_str(options, "node-name");
ret = bdrv_assign_node_name(bs, node_name, errp); bdrv_assign_node_name(bs, node_name, &local_err);
if (ret < 0) { if (error_is_set(&local_err)) {
return ret; error_propagate(errp, local_err);
return -EINVAL;
} }
qdict_del(options, "node-name"); qdict_del(options, "node-name");
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册