On Thu, 2017-02-02 at 17:41 -0800, Dmitry Torokhov wrote:
> Data that is fed into property arrays should not be modified, so let's
> mark
> relevant pointers as const. This will allow us making source arrays as
> const/__initconst.
>
> @@ -718,7 +718,8 @@ static void pset_free_set(struct property_set
> *pset)
> static int pset_copy_entry(struct property_entry *dst,
> const struct property_entry *src)
> {
> - const char **d, **s;
> + const char * const *s;
> + char **d;
You removed const here
> size_t i, nval;
>
> dst->name = kstrdup(src->name, GFP_KERNEL);
> @@ -731,12 +732,11 @@ static int pset_copy_entry(struct property_entry
> *dst,
>
> if (src->is_string) {
> nval = src->length / sizeof(const char *);
> - dst->pointer.str = kcalloc(nval, sizeof(const
> char *),
> - GFP_KERNEL);
> - if (!dst->pointer.str)
> + d = kcalloc(nval, sizeof(const char *),
> GFP_KERNEL);
But left it here. Do we need to remove const?
> + if (!d)
> return -ENOMEM;
>
> - d = dst->pointer.str;
> + dst->pointer.raw_data = d;
> s = src->pointer.str;
So, overall, do we need these changes at all? Nothing in commit message
sheds a light on it.
> for (i = 0; i < nval; i++) {
> d[i] = kstrdup(s[i], GFP_KERNEL);
--
Andy Shevchenko <[email protected]>
Intel Finland Oy