]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
thermal: devfreq_cooling: avoid unnecessary kfree of freq_table
authorAnas Iqbal <mohd.abd.6602@gmail.com>
Mon, 23 Mar 2026 09:40:18 +0000 (09:40 +0000)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 23 Mar 2026 13:51:06 +0000 (14:51 +0100)
dfc->freq_table is only allocated in the non-EM path via
devfreq_cooling_gen_tables(). In the EM path, it remains NULL.

Avoid calling kfree() unnecessarily when freq_table was never allocated.

This resolves a Smatch warning:
calling kfree() when 'dfc->freq_table' is always NULL.

Signed-off-by: Anas Iqbal <mohd.abd.6602@gmail.com>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Link: https://patch.msgid.link/20260323094018.2264-1-mohd.abd.6602@gmail.com
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/thermal/devfreq_cooling.c

index 597e86d16a4e4cd126653bf29237e8f99da3cb33..1c7dffc8d45f747baf0e402bd3d392567e725e63 100644 (file)
@@ -472,7 +472,8 @@ of_devfreq_cooling_register_power(struct device_node *np, struct devfreq *df,
 remove_qos_req:
        dev_pm_qos_remove_request(&dfc->req_max_freq);
 free_table:
-       kfree(dfc->freq_table);
+       if (!dfc->em_pd)
+               kfree(dfc->freq_table);
 free_dfc:
        kfree(dfc);