aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIlya Dryomov <idryomov@gmail.com>2017-01-25 12:16:22 -0500
committerIlya Dryomov <idryomov@gmail.com>2017-02-20 06:16:14 -0500
commit5bc3fb177548503735bcc35fe98475d883740ecb (patch)
treef48c80317a9fc3c82f436bee3cddb75bf8750025
parent03acf083355ffeb89b9269d205004d6d888fff99 (diff)
rbd: use rbd_obj_bytes() more
Returning u64 doesn't make sense: max header->obj_order is 25 and ceph_file_layout::object_size is u32. Signed-off-by: Ilya Dryomov <idryomov@gmail.com> Reviewed-by: Jason Dillaman <dillaman@redhat.com>
-rw-r--r--drivers/block/rbd.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/drivers/block/rbd.c b/drivers/block/rbd.c
index e2ffd4fffd06..55e30db0576d 100644
--- a/drivers/block/rbd.c
+++ b/drivers/block/rbd.c
@@ -971,6 +971,14 @@ static bool rbd_dev_ondisk_valid(struct rbd_image_header_ondisk *ondisk)
971} 971}
972 972
973/* 973/*
974 * returns the size of an object in the image
975 */
976static u32 rbd_obj_bytes(struct rbd_image_header *header)
977{
978 return 1U << header->obj_order;
979}
980
981/*
974 * Fill an rbd image header with information from the given format 1 982 * Fill an rbd image header with information from the given format 1
975 * on-disk header. 983 * on-disk header.
976 */ 984 */
@@ -1255,7 +1263,7 @@ static const char *rbd_segment_name(struct rbd_device *rbd_dev, u64 offset)
1255 1263
1256static u64 rbd_segment_offset(struct rbd_device *rbd_dev, u64 offset) 1264static u64 rbd_segment_offset(struct rbd_device *rbd_dev, u64 offset)
1257{ 1265{
1258 u64 segment_size = (u64) 1 << rbd_dev->header.obj_order; 1266 u64 segment_size = rbd_obj_bytes(&rbd_dev->header);
1259 1267
1260 return offset & (segment_size - 1); 1268 return offset & (segment_size - 1);
1261} 1269}
@@ -1263,7 +1271,7 @@ static u64 rbd_segment_offset(struct rbd_device *rbd_dev, u64 offset)
1263static u64 rbd_segment_length(struct rbd_device *rbd_dev, 1271static u64 rbd_segment_length(struct rbd_device *rbd_dev,
1264 u64 offset, u64 length) 1272 u64 offset, u64 length)
1265{ 1273{
1266 u64 segment_size = (u64) 1 << rbd_dev->header.obj_order; 1274 u64 segment_size = rbd_obj_bytes(&rbd_dev->header);
1267 1275
1268 offset &= segment_size - 1; 1276 offset &= segment_size - 1;
1269 1277
@@ -1275,14 +1283,6 @@ static u64 rbd_segment_length(struct rbd_device *rbd_dev,
1275} 1283}
1276 1284
1277/* 1285/*
1278 * returns the size of an object in the image
1279 */
1280static u64 rbd_obj_bytes(struct rbd_image_header *header)
1281{
1282 return 1 << header->obj_order;
1283}
1284
1285/*
1286 * bio helpers 1286 * bio helpers
1287 */ 1287 */
1288 1288
@@ -2721,7 +2721,7 @@ static int rbd_img_obj_parent_read_full(struct rbd_obj_request *obj_request)
2721 * child image to which the original request was to be sent. 2721 * child image to which the original request was to be sent.
2722 */ 2722 */
2723 img_offset = obj_request->img_offset - obj_request->offset; 2723 img_offset = obj_request->img_offset - obj_request->offset;
2724 length = (u64)1 << rbd_dev->header.obj_order; 2724 length = rbd_obj_bytes(&rbd_dev->header);
2725 2725
2726 /* 2726 /*
2727 * There is no defined parent data beyond the parent 2727 * There is no defined parent data beyond the parent
@@ -5130,7 +5130,7 @@ static int rbd_dev_v2_striping_info(struct rbd_device *rbd_dev)
5130 * out, and only fail if the image has non-default values. 5130 * out, and only fail if the image has non-default values.
5131 */ 5131 */
5132 ret = -EINVAL; 5132 ret = -EINVAL;
5133 obj_size = (u64)1 << rbd_dev->header.obj_order; 5133 obj_size = rbd_obj_bytes(&rbd_dev->header);
5134 p = &striping_info_buf; 5134 p = &striping_info_buf;
5135 stripe_unit = ceph_decode_64(&p); 5135 stripe_unit = ceph_decode_64(&p);
5136 if (stripe_unit != obj_size) { 5136 if (stripe_unit != obj_size) {