From: Greg Kroah-Hartman Date: Fri, 11 Apr 2014 05:12:07 +0000 (-0700) Subject: 3.10-stable patches X-Git-Tag: v3.10.37~6 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=1e15adb7e060e59e5407174075a3198bc3049232;p=thirdparty%2Fkernel%2Fstable-queue.git 3.10-stable patches added patches: cpuidle-check-the-result-of-cpuidle_get_driver-against-null.patch --- diff --git a/queue-3.10/cpuidle-check-the-result-of-cpuidle_get_driver-against-null.patch b/queue-3.10/cpuidle-check-the-result-of-cpuidle_get_driver-against-null.patch new file mode 100644 index 00000000000..571c87cb35b --- /dev/null +++ b/queue-3.10/cpuidle-check-the-result-of-cpuidle_get_driver-against-null.patch @@ -0,0 +1,36 @@ +From 3b9c10e98021e1f92e6f8c7ce1778b86ba68db10 Mon Sep 17 00:00:00 2001 +From: Daniel Fu +Date: Fri, 30 Aug 2013 19:48:22 +0800 +Subject: cpuidle: Check the result of cpuidle_get_driver() against NULL + +From: Daniel Fu + +commit 3b9c10e98021e1f92e6f8c7ce1778b86ba68db10 upstream. + +If the current CPU has no cpuidle driver, drv will be NULL in +cpuidle_driver_ref(). Check if that is the case before trying +to bump up the driver's refcount to prevent the kernel from +crashing. + +[rjw: Subject and changelog] +Signed-off-by: Daniel Fu +Signed-off-by: Rafael J. Wysocki +Cc: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/cpuidle/driver.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/drivers/cpuidle/driver.c ++++ b/drivers/cpuidle/driver.c +@@ -251,7 +251,8 @@ struct cpuidle_driver *cpuidle_driver_re + spin_lock(&cpuidle_driver_lock); + + drv = cpuidle_get_driver(); +- drv->refcnt++; ++ if (drv) ++ drv->refcnt++; + + spin_unlock(&cpuidle_driver_lock); + return drv; diff --git a/queue-3.10/series b/queue-3.10/series index 728ba971f85..d634f8ebaef 100644 --- a/queue-3.10/series +++ b/queue-3.10/series @@ -3,3 +3,4 @@ powernow-k6-disable-cache-when-changing-frequency.patch powernow-k6-correctly-initialize-default-parameters.patch powernow-k6-reorder-frequencies.patch kbuild-fix-make-headers_install-when-path-is-too-long.patch +cpuidle-check-the-result-of-cpuidle_get_driver-against-null.patch