From: Sage Weil Date: Tue, 25 Sep 2012 04:02:47 +0000 (-0700) Subject: rbd: BUG on invalid layout X-Git-Tag: upstream/snapshot3+hdmi~5940^2~75 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6cae3717cddaf8e5e96e304733dca66e40d56f89;p=platform%2Fadaptation%2Frenesas_rcar%2Frenesas_kernel.git rbd: BUG on invalid layout This shouldn't actually be possible because the layout struct is constructed from the RBD header and validated then. [elder@inktank.com: converted BUG() call to equivalent rbd_assert()] Signed-off-by: Sage Weil Reviewed-by: Alex Elder --- diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c index 2f1bef8..bb3d9be 100644 --- a/drivers/block/rbd.c +++ b/drivers/block/rbd.c @@ -1020,8 +1020,9 @@ static int rbd_do_request(struct request *rq, layout->fl_stripe_count = cpu_to_le32(1); layout->fl_object_size = cpu_to_le32(1 << RBD_MAX_OBJ_ORDER); layout->fl_pg_pool = cpu_to_le32(rbd_dev->pool_id); - ceph_calc_raw_layout(osdc, layout, snapid, ofs, &len, &bno, - req, ops); + ret = ceph_calc_raw_layout(osdc, layout, snapid, ofs, &len, &bno, + req, ops); + rbd_assert(ret == 0); ceph_osdc_build_request(req, ofs, &len, ops,