Messages in this thread Patch in this message | | | From | "Srivatsa S. Bhat" <> | Subject | [PATCH] cpuidle: Avoid possible NULL pointer dereference in __cpuidle_register_device() | Date | Mon, 02 Apr 2012 20:14:22 +0530 |
| |
In __cpuidle_register_device(), "dev->cpu" is used before checking if dev is non-NULL. Fix it.
Signed-off-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> ---
drivers/cpuidle/cpuidle.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c index 87411ce..75b381e 100644 --- a/drivers/cpuidle/cpuidle.c +++ b/drivers/cpuidle/cpuidle.c @@ -372,7 +372,7 @@ EXPORT_SYMBOL_GPL(cpuidle_disable_device); static int __cpuidle_register_device(struct cpuidle_device *dev) { int ret; - struct device *cpu_dev = get_cpu_device((unsigned long)dev->cpu); + struct device *cpu_dev; struct cpuidle_driver *cpuidle_driver = cpuidle_get_driver(); if (!dev) @@ -380,6 +380,7 @@ static int __cpuidle_register_device(struct cpuidle_device *dev) if (!try_module_get(cpuidle_driver->owner)) return -EINVAL; + cpu_dev = get_cpu_device((unsigned long)dev->cpu); init_completion(&dev->kobj_unregister); per_cpu(cpuidle_devices, dev->cpu) = dev;
| |