A simple code clean for nbd_genl_status() Signed-off-by: Wu Bo <wubo40@xxxxxxxxxx> --- drivers/block/nbd.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index b47b2a8..175ea97 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -2375,7 +2375,6 @@ static int nbd_genl_status(struct sk_buff *skb, struct genl_info *info) reply_head = genlmsg_put_reply(reply, info, &nbd_genl_family, 0, NBD_CMD_STATUS); if (!reply_head) { - nlmsg_free(reply); goto out; } @@ -2383,7 +2382,6 @@ static int nbd_genl_status(struct sk_buff *skb, struct genl_info *info) if (index == -1) { ret = idr_for_each(&nbd_index_idr, &status_cb, reply); if (ret) { - nlmsg_free(reply); goto out; } } else { @@ -2392,7 +2390,6 @@ static int nbd_genl_status(struct sk_buff *skb, struct genl_info *info) if (nbd) { ret = populate_nbd_status(nbd, reply); if (ret) { - nlmsg_free(reply); goto out; } } @@ -2401,6 +2398,8 @@ static int nbd_genl_status(struct sk_buff *skb, struct genl_info *info) genlmsg_end(reply, reply_head); ret = genlmsg_reply(reply, info); out: + if (reply) + nlmsg_free(reply); mutex_unlock(&nbd_index_mutex); return ret; } -- 1.8.3.1