Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ecb4dc22 authored by Alex Elder's avatar Alex Elder Committed by Sage Weil
Browse files

rbd: make rbd spec names pointer to const



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: default avatarAlex Elder <elder@inktank.com>
Reviewed-by: default avatarJosh Durgin <josh.durgin@inktank.com>
parent e1d4213f
Loading
Loading
Loading
Loading
+9 −7
Original line number Diff line number Diff line
@@ -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;
};
@@ -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;
@@ -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 */