lkml.org 
[lkml]   [2020]   [Oct]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.8 404/633] cpufreq: powernv: Fix frame-size-overflow in powernv_cpufreq_reboot_notifier
    Date
    From: Srikar Dronamraju <srikar@linux.vnet.ibm.com>

    [ Upstream commit a2d0230b91f7e23ceb5d8fb6a9799f30517ec33a ]

    The patch avoids allocating cpufreq_policy on stack hence fixing frame
    size overflow in 'powernv_cpufreq_reboot_notifier':

    drivers/cpufreq/powernv-cpufreq.c: In function powernv_cpufreq_reboot_notifier:
    drivers/cpufreq/powernv-cpufreq.c:906:1: error: the frame size of 2064 bytes is larger than 2048 bytes

    Fixes: cf30af76 ("cpufreq: powernv: Set the cpus to nominal frequency during reboot/kexec")
    Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
    Reviewed-by: Daniel Axtens <dja@axtens.net>
    Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/20200922080254.41497-1-srikar@linux.vnet.ibm.com
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/cpufreq/powernv-cpufreq.c | 9 ++++++---
    1 file changed, 6 insertions(+), 3 deletions(-)

    diff --git a/drivers/cpufreq/powernv-cpufreq.c b/drivers/cpufreq/powernv-cpufreq.c
    index 8646eb197cd96..31f5c4ebbac9f 100644
    --- a/drivers/cpufreq/powernv-cpufreq.c
    +++ b/drivers/cpufreq/powernv-cpufreq.c
    @@ -884,12 +884,15 @@ static int powernv_cpufreq_reboot_notifier(struct notifier_block *nb,
    unsigned long action, void *unused)
    {
    int cpu;
    - struct cpufreq_policy cpu_policy;
    + struct cpufreq_policy *cpu_policy;

    rebooting = true;
    for_each_online_cpu(cpu) {
    - cpufreq_get_policy(&cpu_policy, cpu);
    - powernv_cpufreq_target_index(&cpu_policy, get_nominal_index());
    + cpu_policy = cpufreq_cpu_get(cpu);
    + if (!cpu_policy)
    + continue;
    + powernv_cpufreq_target_index(cpu_policy, get_nominal_index());
    + cpufreq_cpu_put(cpu_policy);
    }

    return NOTIFY_DONE;
    --
    2.25.1


    \
     
     \ /
      Last update: 2020-10-27 18:09    [W:4.036 / U:0.216 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site