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
6 Content-Type: text/plain; charset=UTF-8
7 Content-Transfer-Encoding: 8bit
9 From: Vincent Stehlé <vincent.stehle@laposte.net>
11 commit 31d4c528cea4023cf36f6148c03bb960cedefeef upstream.
13 Free the priv structure only after we are done using it.
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>
22 drivers/cpufreq/scpi-cpufreq.c | 2 +-
23 1 file changed, 1 insertion(+), 1 deletion(-)
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);
30 dev_pm_opp_free_cpufreq_table(priv->cpu_dev, &policy->freq_table);
32 dev_pm_opp_remove_all_dynamic(priv->cpu_dev);