Skip to content

Commit

Permalink
rbd: make rbd spec names pointer to const
Browse files Browse the repository at this point in the history
Make the names and image id in an rbd_spec be pointers to constant
data.  This required the use of a local variable to hold the
snapshot name in rbd_add_parse_args() to avoid a warning.

Signed-off-by: Alex Elder <elder@inktank.com>
Reviewed-by: Josh Durgin <josh.durgin@inktank.com>
  • Loading branch information
Alex Elder authored and Sage Weil committed May 2, 2013
1 parent e1d4213 commit ecb4dc2
Showing 1 changed file with 9 additions and 7 deletions.
16 changes: 9 additions & 7 deletions drivers/block/rbd.c
Original file line number Diff line number Diff line change
Expand Up @@ -138,13 +138,13 @@ struct rbd_image_header {
*/
struct rbd_spec {
u64 pool_id;
char *pool_name;
const char *pool_name;

char *image_id;
char *image_name;
const char *image_id;
const char *image_name;

u64 snap_id;
char *snap_name;
const char *snap_name;

struct kref kref;
};
Expand Down Expand Up @@ -4375,6 +4375,7 @@ static int rbd_add_parse_args(const char *buf,
size_t len;
char *options;
const char *mon_addrs;
char *snap_name;
size_t mon_addrs_size;
struct rbd_spec *spec = NULL;
struct rbd_options *rbd_opts = NULL;
Expand Down Expand Up @@ -4433,10 +4434,11 @@ static int rbd_add_parse_args(const char *buf,
ret = -ENAMETOOLONG;
goto out_err;
}
spec->snap_name = kmemdup(buf, len + 1, GFP_KERNEL);
if (!spec->snap_name)
snap_name = kmemdup(buf, len + 1, GFP_KERNEL);
if (!snap_name)
goto out_mem;
*(spec->snap_name + len) = '\0';
*(snap_name + len) = '\0';
spec->snap_name = snap_name;

/* Initialize all rbd options to the defaults */

Expand Down

0 comments on commit ecb4dc2

Please sign in to comment.