[PATCH v3] PM / OPP: optimize dev_pm_opp_set_rate() performance a bit

Viresh Kumar viresh.kumar at linaro.org
Mon Jul 25 15:34:10 PDT 2016


On 25-07-16, 14:11, Jisheng Zhang wrote:
> In dev_pm_opp_set_rate(), _find_opp_table() is called 4 times: once by
> _get_opp_clk(), once by dev_pm_opp_set_rate() itself, and twice by
> dev_pm_opp_find_freq_ceil(). If there are several opp_tables in the
> system, three times of opp table finding is a big waste. This patch
> reduced the call of _find_opp_table() to twice.
> 
> Signed-off-by: Jisheng Zhang <jszhang at marvell.com>
> ---
> Since v2:
>  - fix gcc warnings
> 
> Since v1:
>  - avoid opp_table pointer usage after the rcu_read_unlock() as pointed
>    out by Viresh, thus we can only reduced the call of _find_opp_table
>    to twice.
> 
>  drivers/base/power/opp/core.c | 31 +++++++++++++++++++------------
>  1 file changed, 19 insertions(+), 12 deletions(-)

Acked-by: Viresh Kumar <viresh.kumar at linaro.org>

-- 
viresh



More information about the linux-arm-kernel mailing list