Merge branch 'pm-cpuidle-fixes'
* pm-cpuidle-fixes: cpuidle: Validate cpu_dev in cpuidle_add_sysfs()
This commit is contained in:
Коммит
90ff2b729e
|
@ -615,6 +615,18 @@ int cpuidle_add_sysfs(struct cpuidle_device *dev)
|
|||
struct device *cpu_dev = get_cpu_device((unsigned long)dev->cpu);
|
||||
int error;
|
||||
|
||||
/*
|
||||
* Return if cpu_device is not setup for this CPU.
|
||||
*
|
||||
* This could happen if the arch did not set up cpu_device
|
||||
* since this CPU is not in cpu_present mask and the
|
||||
* driver did not send a correct CPU mask during registration.
|
||||
* Without this check we would end up passing bogus
|
||||
* value for &cpu_dev->kobj in kobject_init_and_add()
|
||||
*/
|
||||
if (!cpu_dev)
|
||||
return -ENODEV;
|
||||
|
||||
kdev = kzalloc(sizeof(*kdev), GFP_KERNEL);
|
||||
if (!kdev)
|
||||
return -ENOMEM;
|
||||
|
|
Загрузка…
Ссылка в новой задаче