diff --git a/drivers/block/nbd.c b/drivers/block/nbd.c index 9e190d220e98..8b7f306ec976 100644 --- a/drivers/block/nbd.c +++ b/drivers/block/nbd.c @@ -2147,12 +2147,13 @@ again: ret = nbd_start_device(nbd); out: - mutex_unlock(&nbd->config_lock); if (!ret) { set_bit(NBD_RT_HAS_CONFIG_REF, &config->runtime_flags); refcount_inc(&nbd->config_refs); nbd_connect_reply(info, nbd->index); } + mutex_unlock(&nbd->config_lock); + nbd_config_put(nbd); if (put_dev) nbd_put(nbd);