From fed14519956019065b858b0505dc54190979cce0 Mon Sep 17 00:00:00 2001 From: Alex Elder Date: Mon, 6 May 2013 17:40:33 -0500 Subject: [PATCH] --- yaml --- r: 375607 b: refs/heads/master c: 70cf49cfc7a4d1eb4aeea6cd128b88230be9d0b1 h: refs/heads/master i: 375605: 170a276cd49a32cf06e00f9a54ff9acc4fd4cb17 375603: d11a4d5e6d3296d908c6c8d394efcb56cbe37e2f 375599: abdb5783b6378892c01c18ffba8e6b9332f9cdf4 v: v3 --- [refs] | 2 +- trunk/drivers/block/rbd.c | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/[refs] b/[refs] index 633fffc4a679..cdea01d58e1c 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b91f09f17b2a302f07022e2f766969e2536d71b3 +refs/heads/master: 70cf49cfc7a4d1eb4aeea6cd128b88230be9d0b1 diff --git a/trunk/drivers/block/rbd.c b/trunk/drivers/block/rbd.c index 5161e80a38ef..b67ecda1e7ef 100644 --- a/trunk/drivers/block/rbd.c +++ b/trunk/drivers/block/rbd.c @@ -3665,9 +3665,13 @@ static int rbd_dev_v2_parent_info(struct rbd_device *rbd_dev) ceph_decode_64_safe(&p, end, parent_spec->snap_id, out_err); ceph_decode_64_safe(&p, end, overlap, out_err); - rbd_dev->parent_overlap = overlap; - rbd_dev->parent_spec = parent_spec; - parent_spec = NULL; /* rbd_dev now owns this */ + if (overlap) { + rbd_dev->parent_spec = parent_spec; + parent_spec = NULL; /* rbd_dev now owns this */ + rbd_dev->parent_overlap = overlap; + } else { + rbd_warn(rbd_dev, "ignoring parent of clone with overlap 0\n"); + } out: ret = 0; out_err: