Commit cb75223d authored by Alex Elder's avatar Alex Elder Committed by Sage Weil

rbd: snap names are pointer to constant data

Make explicit that snapshot names don't change by making functions
return and take parameters that that point to const qualified data.

This resolves:
    http://tracker.ceph.com/issues/4867Signed-off-by: default avatarAlex Elder <elder@inktank.com>
Reviewed-by: default avatarJosh Durgin <josh.durgin@inktank.com>
parent a3fbe5d4
...@@ -3435,10 +3435,10 @@ static struct rbd_snap *rbd_snap_create(struct rbd_device *rbd_dev, ...@@ -3435,10 +3435,10 @@ static struct rbd_snap *rbd_snap_create(struct rbd_device *rbd_dev,
* Returns a dynamically-allocated snapshot name if successful, or a * Returns a dynamically-allocated snapshot name if successful, or a
* pointer-coded error otherwise. * pointer-coded error otherwise.
*/ */
static char *rbd_dev_v1_snap_info(struct rbd_device *rbd_dev, u32 which, static const char *rbd_dev_v1_snap_info(struct rbd_device *rbd_dev, u32 which,
u64 *snap_size, u64 *snap_features) u64 *snap_size, u64 *snap_features)
{ {
char *snap_name; const char *snap_name;
int i; int i;
rbd_assert(which < rbd_dev->header.snapc->num_snaps); rbd_assert(which < rbd_dev->header.snapc->num_snaps);
...@@ -3907,7 +3907,7 @@ static int rbd_dev_v2_snap_context(struct rbd_device *rbd_dev, u64 *ver) ...@@ -3907,7 +3907,7 @@ static int rbd_dev_v2_snap_context(struct rbd_device *rbd_dev, u64 *ver)
return ret; return ret;
} }
static char *rbd_dev_v2_snap_name(struct rbd_device *rbd_dev, u32 which) static const char *rbd_dev_v2_snap_name(struct rbd_device *rbd_dev, u32 which)
{ {
size_t size; size_t size;
void *reply_buf; void *reply_buf;
...@@ -3948,13 +3948,13 @@ static char *rbd_dev_v2_snap_name(struct rbd_device *rbd_dev, u32 which) ...@@ -3948,13 +3948,13 @@ static char *rbd_dev_v2_snap_name(struct rbd_device *rbd_dev, u32 which)
return snap_name; return snap_name;
} }
static char *rbd_dev_v2_snap_info(struct rbd_device *rbd_dev, u32 which, static const char *rbd_dev_v2_snap_info(struct rbd_device *rbd_dev, u32 which,
u64 *snap_size, u64 *snap_features) u64 *snap_size, u64 *snap_features)
{ {
u64 snap_id; u64 snap_id;
u64 size; u64 size;
u64 features; u64 features;
char *snap_name; const char *snap_name;
int ret; int ret;
rbd_assert(which < rbd_dev->header.snapc->num_snaps); rbd_assert(which < rbd_dev->header.snapc->num_snaps);
...@@ -3978,7 +3978,7 @@ static char *rbd_dev_v2_snap_info(struct rbd_device *rbd_dev, u32 which, ...@@ -3978,7 +3978,7 @@ static char *rbd_dev_v2_snap_info(struct rbd_device *rbd_dev, u32 which,
return ERR_PTR(ret); return ERR_PTR(ret);
} }
static char *rbd_dev_snap_info(struct rbd_device *rbd_dev, u32 which, static const char *rbd_dev_snap_info(struct rbd_device *rbd_dev, u32 which,
u64 *snap_size, u64 *snap_features) u64 *snap_size, u64 *snap_features)
{ {
if (rbd_dev->image_format == 1) if (rbd_dev->image_format == 1)
...@@ -4045,7 +4045,7 @@ static int rbd_dev_snaps_update(struct rbd_device *rbd_dev) ...@@ -4045,7 +4045,7 @@ static int rbd_dev_snaps_update(struct rbd_device *rbd_dev)
while (index < snap_count || links != head) { while (index < snap_count || links != head) {
u64 snap_id; u64 snap_id;
struct rbd_snap *snap; struct rbd_snap *snap;
char *snap_name; const char *snap_name;
u64 snap_size = 0; u64 snap_size = 0;
u64 snap_features = 0; u64 snap_features = 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment