summaryrefslogtreecommitdiffstats
path: root/drivers/base/property.c
diff options
context:
space:
mode:
authorDmitry Torokhov <dmitry.torokhov@gmail.com>2017-02-03 02:41:26 +0100
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2017-02-07 13:21:15 +0100
commit9426998ce6f8616c48c2834cafbe5616da3f5abd (patch)
tree03990e849cc0985423227886b1b65772a6eb8526 /drivers/base/property.c
parentdevice property: allow to constify properties (diff)
downloadlinux-9426998ce6f8616c48c2834cafbe5616da3f5abd.tar.xz
linux-9426998ce6f8616c48c2834cafbe5616da3f5abd.zip
device property: constify property arrays values
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. Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/base/property.c')
-rw-r--r--drivers/base/property.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/base/property.c b/drivers/base/property.c
index e9fa75645d69..31b942a29fdc 100644
--- a/drivers/base/property.c
+++ b/drivers/base/property.c
@@ -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;
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);
+ if (!d)
return -ENOMEM;
- d = dst->pointer.str;
+ dst->pointer.raw_data = d;
s = src->pointer.str;
for (i = 0; i < nval; i++) {
d[i] = kstrdup(s[i], GFP_KERNEL);