cpufreq: tegra194: fix warning due to missing opp_put
Subsystems (2)
PATCH 1/1 cpufreq: tegra194: fix warning due to missing opp_put
Fix the warning due to missing dev_pm_opp_put() call and hence wrong refcount value. This causes below warning message when trying to remove the module.
Call trace: dev_pm_opp_put_opp_table+0x154/0x15c dev_pm_opp_remove_table+0x34/0xa0 _dev_pm_opp_cpumask_remove_table+0x7c/0xbc dev_pm_opp_of_cpumask_remove_table+0x10/0x18 tegra194_cpufreq_exit+0x24/0x34 [tegra194_cpufreq] cpufreq_remove_dev+0xa8/0xf8 subsys_interface_unregister+0x90/0xe8 cpufreq_unregister_driver+0x54/0x9c tegra194_cpufreq_remove+0x18/0x2c [tegra194_cpufreq] platform_remove+0x24/0x74 device_remove+0x48/0x78 device_release_driver_internal+0xc8/0x160 driver_detach+0x4c/0x90 bus_remove_driver+0x68/0xb8 driver_unregister+0x2c/0x58 platform_driver_unregister+0x10/0x18 tegra194_ccplex_driver_exit+0x14/0x1e0 [tegra194_cpufreq] __arm64_sys_delete_module+0x184/0x270
--- drivers/cpufreq/tegra194-cpufreq.c | 2 ++ 1 file changed, 2 insertions(+)
drivers/cpufreq/tegra194-cpufreq.c +2 -0
@@ -454,6 +454,8 @@ static int tegra_cpufreq_init_cpufreq_table(struct cpufreq_policy *policy,if (ret <0 )return ret; +dev_pm_opp_put (opp); + freq_table[j].driver_data = pos->driver_data; freq_table[j].frequency = pos->frequency; j++;
Signature · 1 line
2.17.1
Viresh Kumar
maintainerdrivers/cpufreq/tegra194-cpufreq.c static int tegra_cpufreq_init_cpufreq_table(struct cpufreq_policy *policy,
Quoted 35 lines · Sumit Gupta
Fix the warning due to missing
dev_pm_opp_put()call and hence wrong refcount value. This causes below warning message when trying to remove the module.Call trace: dev_pm_opp_put_opp_table+0x154/0x15c dev_pm_opp_remove_table+0x34/0xa0 _dev_pm_opp_cpumask_remove_table+0x7c/0xbc dev_pm_opp_of_cpumask_remove_table+0x10/0x18 tegra194_cpufreq_exit+0x24/0x34 [tegra194_cpufreq] cpufreq_remove_dev+0xa8/0xf8 subsys_interface_unregister+0x90/0xe8 cpufreq_unregister_driver+0x54/0x9c tegra194_cpufreq_remove+0x18/0x2c [tegra194_cpufreq] platform_remove+0x24/0x74 device_remove+0x48/0x78 device_release_driver_internal+0xc8/0x160 driver_detach+0x4c/0x90 bus_remove_driver+0x68/0xb8 driver_unregister+0x2c/0x58 platform_driver_unregister+0x10/0x18 tegra194_ccplex_driver_exit+0x14/0x1e0 [tegra194_cpufreq] __arm64_sys_delete_module+0x184/0x270Fixes f41e1442ac5b ("cpufreq: tegra194: add OPP support and set bandwidth")Signed-off-by Sumit Gupta <[email protected]>--- drivers/cpufreq/tegra194-cpufreq.c | 2 ++ 1 file changed, 2 insertions(+)drivers/cpufreq/tegra194-cpufreq.c +0
-0@@ -454,6 +454,8 @@ static int tegra_cpufreq_init_cpufreq_table(struct cpufreq_policy *policy,
You need to put the OPP here, even if this fails.
Quoted 10 lines
drivers/cpufreq/tegra194-cpufreq.c +2
-0if (ret <0 )return ret; +dev_pm_opp_put (opp); + freq_table[j].driver_data = pos->driver_data; freq_table[j].frequency = pos->frequency; j++;Signature · 1 line
2.17.1
Signature · 1 line
viresh
Quoted 34 lines · Viresh Kumar
External email: Use caution opening links or attachments
Quoted 30 lines · Sumit Gupta
Fix the warning due to missing
dev_pm_opp_put()call and hence wrong refcount value. This causes below warning message when trying to remove the module.Call trace: dev_pm_opp_put_opp_table+0x154/0x15c dev_pm_opp_remove_table+0x34/0xa0 _dev_pm_opp_cpumask_remove_table+0x7c/0xbc dev_pm_opp_of_cpumask_remove_table+0x10/0x18 tegra194_cpufreq_exit+0x24/0x34 [tegra194_cpufreq] cpufreq_remove_dev+0xa8/0xf8 subsys_interface_unregister+0x90/0xe8 cpufreq_unregister_driver+0x54/0x9c tegra194_cpufreq_remove+0x18/0x2c [tegra194_cpufreq] platform_remove+0x24/0x74 device_remove+0x48/0x78 device_release_driver_internal+0xc8/0x160 driver_detach+0x4c/0x90 bus_remove_driver+0x68/0xb8 driver_unregister+0x2c/0x58 platform_driver_unregister+0x10/0x18 tegra194_ccplex_driver_exit+0x14/0x1e0 [tegra194_cpufreq] __arm64_sys_delete_module+0x184/0x270Fixes f41e1442ac5b ("cpufreq: tegra194: add OPP support and set bandwidth")Signed-off-by Sumit Gupta <[email protected]>--- drivers/cpufreq/tegra194-cpufreq.c | 2 ++ 1 file changed, 2 insertions(+)
Quoted 8 lines
drivers/cpufreq/tegra194-cpufreq.c static int tegra_cpufreq_init_cpufreq_table(struct cpufreq_policy *policy,
Quoted 5 lines
drivers/cpufreq/tegra194-cpufreq.c +0
-0@@ -454,6 +454,8 @@ static int tegra_cpufreq_init_cpufreq_table(struct cpufreq_policy *policy,You need to put the OPP here, even if this fails.
Sent v2 with the change. Thank you for pointing.
Regards,
Sumit Gupta
Quoted 13 lines
Quoted 10 lines
drivers/cpufreq/tegra194-cpufreq.c +2
-1if (ret <0 )return ret; +dev_pm_opp_put (opp); + freq_table[j].driver_data = pos->driver_data; freq_table[j].frequency = pos->frequency; j++; --2.17.1
--
viresh