diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index d511ecb35144deed195d8db2a7822ffee5098f1f..8a86b62466f7ce72b54853b283e03fd495df8083 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -5106,10 +5106,7 @@ static void rbd_dev_unprobe(struct rbd_device *rbd_dev)
 {
 	struct rbd_image_header	*header;
 
-	/* Drop parent reference unless it's already been done (or none) */
-
-	if (rbd_dev->parent_overlap)
-		rbd_dev_parent_put(rbd_dev);
+	rbd_dev_parent_put(rbd_dev);
 
 	/* Free dynamic fields from the header, then zero it out */