forked from Minki/linux
regulator: Mark supply_name const and duplicate it as such
The supply_name member of struct regulator can be const as we don't change it in the regulator core. Furthermore, when we copy the supply name we can use kstrdup_const() here to avoid a copy if the name is in the ro data section. Signed-off-by: Stephen Boyd <sboyd@codeaurora.org> Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
b7cd1b1386
commit
0630b61439
@ -1343,7 +1343,7 @@ static struct regulator *create_regulator(struct regulator_dev *rdev,
|
||||
/* non-fatal */
|
||||
}
|
||||
} else {
|
||||
regulator->supply_name = kstrdup(supply_name, GFP_KERNEL);
|
||||
regulator->supply_name = kstrdup_const(supply_name, GFP_KERNEL);
|
||||
if (regulator->supply_name == NULL)
|
||||
goto overflow_err;
|
||||
}
|
||||
@ -1799,7 +1799,7 @@ static void _regulator_put(struct regulator *regulator)
|
||||
put_device(&rdev->dev);
|
||||
mutex_unlock(&rdev->mutex);
|
||||
|
||||
kfree(regulator->supply_name);
|
||||
kfree_const(regulator->supply_name);
|
||||
kfree(regulator);
|
||||
|
||||
module_put(rdev->owner);
|
||||
|
@ -29,7 +29,7 @@ struct regulator {
|
||||
int uA_load;
|
||||
int min_uV;
|
||||
int max_uV;
|
||||
char *supply_name;
|
||||
const char *supply_name;
|
||||
struct device_attribute dev_attr;
|
||||
struct regulator_dev *rdev;
|
||||
struct dentry *debugfs;
|
||||
|
Loading…
Reference in New Issue
Block a user