aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/block/rbd.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index 9ac1484a95ad..bccd350a0323 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -383,13 +383,15 @@ static int rbd_get_client(struct rbd_device *rbd_dev, const char *mon_addr,
383 spin_lock(&node_lock); 383 spin_lock(&node_lock);
384 rbdc = __rbd_client_find(opt); 384 rbdc = __rbd_client_find(opt);
385 if (rbdc) { 385 if (rbdc) {
386 ceph_destroy_options(opt);
387 kfree(rbd_opts);
388
389 /* using an existing client */ 386 /* using an existing client */
390 kref_get(&rbdc->kref); 387 kref_get(&rbdc->kref);
391 rbd_dev->rbd_client = rbdc;
392 spin_unlock(&node_lock); 388 spin_unlock(&node_lock);
389
390 rbd_dev->rbd_client = rbdc;
391
392 ceph_destroy_options(opt);
393 kfree(rbd_opts);
394
393 return 0; 395 return 0;
394 } 396 }
395 spin_unlock(&node_lock); 397 spin_unlock(&node_lock);