]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/blob - releases/5.0.6/cpufreq-scpi-fix-use-after-free.patch
Linux 5.0.6
[thirdparty/kernel/stable-queue.git] / releases / 5.0.6 / cpufreq-scpi-fix-use-after-free.patch
1 From 31d4c528cea4023cf36f6148c03bb960cedefeef Mon Sep 17 00:00:00 2001
2 From: =?UTF-8?q?Vincent=20Stehl=C3=A9?= <vincent.stehle@laposte.net>
3 Date: Wed, 27 Mar 2019 23:06:42 +0100
4 Subject: cpufreq: scpi: Fix use after free
5 MIME-Version: 1.0
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
8
9 From: Vincent Stehlé <vincent.stehle@laposte.net>
10
11 commit 31d4c528cea4023cf36f6148c03bb960cedefeef upstream.
12
13 Free the priv structure only after we are done using it.
14
15 Fixes: 1690d8bb91e370ab ("cpufreq: scpi/scmi: Fix freeing of dynamic OPPs")
16 Signed-off-by: Vincent Stehlé <vincent.stehle@laposte.net>
17 Cc: 4.20+ <stable@vger.kernel.org> # 4.20+
18 Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
19 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
20
21 ---
22 drivers/cpufreq/scpi-cpufreq.c | 2 +-
23 1 file changed, 1 insertion(+), 1 deletion(-)
24
25 --- a/drivers/cpufreq/scpi-cpufreq.c
26 +++ b/drivers/cpufreq/scpi-cpufreq.c
27 @@ -189,8 +189,8 @@ static int scpi_cpufreq_exit(struct cpuf
28 cpufreq_cooling_unregister(priv->cdev);
29 clk_put(priv->clk);
30 dev_pm_opp_free_cpufreq_table(priv->cpu_dev, &policy->freq_table);
31 - kfree(priv);
32 dev_pm_opp_remove_all_dynamic(priv->cpu_dev);
33 + kfree(priv);
34
35 return 0;
36 }