diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 324bf35ec4dd65631d75771fc77fdd70869ca26c..69d03aa46d0dbbc16fbd0d6b07a7c7c0026fb374 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c @@ -4720,7 +4720,10 @@ static int rbd_dev_v2_header_info(struct rbd_device *rbd_dev) } ret = rbd_dev_v2_snap_context(rbd_dev); - dout("rbd_dev_v2_snap_context returned %d\n", ret); + if (ret && first_time) { + kfree(rbd_dev->header.object_prefix); + rbd_dev->header.object_prefix = NULL; + } return ret; }