Skip to content

Commit

Permalink
rbd: get rid of RBD_MAX_SEG_NAME_LEN
Browse files Browse the repository at this point in the history
RBD_MAX_SEG_NAME_LEN represents the maximum length of an rbd object
name (i.e., one of the objects providing storage backing an rbd
image).

Another symbol, MAX_OBJ_NAME_SIZE, is used in the osd client code to
define the maximum length of any object name in an osd request.

Right now they disagree, with RBD_MAX_SEG_NAME_LEN being too big.

There's no real benefit at this point to defining the rbd object
name length limit separate from any other object name, so just
get rid of RBD_MAX_SEG_NAME_LEN and use MAX_OBJ_NAME_SIZE in its
place.

Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Sage Weil <sage@inktank.com>
  • Loading branch information
Alex Elder committed Dec 17, 2012
1 parent 685a755 commit 2fd82b9
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 5 deletions.
6 changes: 3 additions & 3 deletions drivers/block/rbd.c
Original file line number Diff line number Diff line change
Expand Up @@ -740,13 +740,13 @@ static char *rbd_segment_name(struct rbd_device *rbd_dev, u64 offset)
u64 segment;
int ret;

name = kmalloc(RBD_MAX_SEG_NAME_LEN + 1, GFP_NOIO);
name = kmalloc(MAX_OBJ_NAME_SIZE + 1, GFP_NOIO);
if (!name)
return NULL;
segment = offset >> rbd_dev->header.obj_order;
ret = snprintf(name, RBD_MAX_SEG_NAME_LEN, "%s.%012llx",
ret = snprintf(name, MAX_OBJ_NAME_SIZE + 1, "%s.%012llx",
rbd_dev->header.object_prefix, segment);
if (ret < 0 || ret >= RBD_MAX_SEG_NAME_LEN) {
if (ret < 0 || ret > MAX_OBJ_NAME_SIZE) {
pr_err("error formatting segment name for #%llu (%d)\n",
segment, ret);
kfree(name);
Expand Down
2 changes: 0 additions & 2 deletions drivers/block/rbd_types.h
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,6 @@
#define RBD_MIN_OBJ_ORDER 16
#define RBD_MAX_OBJ_ORDER 30

#define RBD_MAX_SEG_NAME_LEN 128

#define RBD_COMP_NONE 0
#define RBD_CRYPT_NONE 0

Expand Down

0 comments on commit 2fd82b9

Please sign in to comment.