Message ID | 20210205065650.2357457-3-sunke32@huawei.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | fix a NULL pointer bug and simplify the code | expand |
diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index 3c9b3bf3f4c2..ecae81e43122 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -2029,12 +2029,11 @@ static int nbd_genl_disconnect(struct sk_buff *skb, struct genl_info *info) } mutex_unlock(&nbd->config_lock); mutex_unlock(&nbd_index_mutex); - if (!refcount_inc_not_zero(&nbd->config_refs)) { - nbd_put(nbd); - return 0; - } + if (!refcount_inc_not_zero(&nbd->config_refs)) + goto put_nbd; nbd_disconnect_and_put(nbd); nbd_config_put(nbd); +put_nbd: nbd_put(nbd); return 0; }
Replace the following two statements by the statement “goto put_nbd;” nbd_put(nbd); return 0; Suggested-by: Markus Elfring <Markus.Elfring@web.de> Signed-off-by: Sun Ke <sunke32@huawei.com> --- drivers/block/nbd.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)