Sorry, that's the fault braught by my hyper volume patchset. Reviewed-by: Robin Dong <[email protected]>
2013/11/29 Liu Yuan <[email protected]> > - clear bitmap for hyper valume > - return error if inode operatoin fails as before > > Signed-off-by: Liu Yuan <[email protected]> > --- > sheep/ops.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/sheep/ops.c b/sheep/ops.c > index b626489..4dffa86 100644 > --- a/sheep/ops.c > +++ b/sheep/ops.c > @@ -819,7 +819,7 @@ static int local_flush_vdi(struct request *req) > static int local_discard_obj(struct request *req) > { > uint64_t oid = req->rq.obj.oid; > - uint32_t vid = oid_to_vid(oid), zero = 0, tmp_vid; > + uint32_t vid = oid_to_vid(oid), tmp_vid; > int ret = SD_RES_SUCCESS, idx = data_oid_to_idx(oid); > struct sd_inode *inode = xmalloc(sizeof(struct sd_inode)); > > @@ -832,9 +832,9 @@ static int local_discard_obj(struct request *req) > tmp_vid = INODE_GET_VID(inode, idx); > /* if vid in idx is not exist, we don't need to remove it */ > if (tmp_vid) { > - INODE_SET_VID(inode, idx, vid); > + INODE_SET_VID(inode, idx, 0); > ret = sd_inode_write_vid(sheep_bnode_writer, inode, idx, > vid, > - zero, 0, false, false); > + 0, 0, false, false); > if (ret != SD_RES_SUCCESS) > goto out; > if (sd_remove_object(oid) != SD_RES_SUCCESS) > @@ -846,7 +846,7 @@ static int local_discard_obj(struct request *req) > */ > out: > free(inode); > - return SD_RES_SUCCESS; > + return ret; > } > > static int local_flush_and_del(struct request *req) > -- > 1.7.9.5 > > -- > sheepdog mailing list > [email protected] > http://lists.wpkg.org/mailman/listinfo/sheepdog > -- -- Best Regard Robin Dong
-- sheepdog mailing list [email protected] http://lists.wpkg.org/mailman/listinfo/sheepdog
