diff options
author | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-03-27 09:11:25 +0200 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-03-27 09:11:25 +0200 |
commit | 1c816bad41fea5470e8077ae4e661f3f9b5ada64 (patch) | |
tree | 5e923d12b6284a711d66efee822ca48f95ebf1af /drivers/cpuidle/sysfs.c | |
parent | staging: rtl8192e: Fix issues reported by checkpatch.pl (diff) | |
parent | Linux 4.11-rc4 (diff) | |
download | linux-1c816bad41fea5470e8077ae4e661f3f9b5ada64.tar.xz linux-1c816bad41fea5470e8077ae4e661f3f9b5ada64.zip |
Merge 4.11-rc4 into staging-next
We need the IIO fixes in here as well to handle merge issues.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/cpuidle/sysfs.c')
-rw-r--r-- | drivers/cpuidle/sysfs.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/cpuidle/sysfs.c b/drivers/cpuidle/sysfs.c index c5adc8c9ac43..ae948b1da93a 100644 --- a/drivers/cpuidle/sysfs.c +++ b/drivers/cpuidle/sysfs.c @@ -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; |