Loading drivers/cpufreq/cpufreq_interactive.c +9 −1 Original line number Diff line number Diff line Loading @@ -400,6 +400,7 @@ static void cpufreq_interactive_timer(unsigned long data) unsigned int index; unsigned long flags; bool boosted; struct cpufreq_govinfo int_info; if (!down_read_trylock(&pcpu->enable_sem)) return; Loading Loading @@ -438,8 +439,15 @@ static void cpufreq_interactive_timer(unsigned long data) do_div(cputime_speedadj, delta_time); } spin_lock_irqsave(&pcpu->target_freq_lock, flags); loadadjfreq = (unsigned int)cputime_speedadj * 100; int_info.cpu = data; int_info.load = loadadjfreq / pcpu->policy->max; int_info.sampling_rate_us = tunables->timer_rate; atomic_notifier_call_chain(&cpufreq_govinfo_notifier_list, CPUFREQ_LOAD_CHANGE, &int_info); spin_lock_irqsave(&pcpu->target_freq_lock, flags); cpu_load = loadadjfreq / pcpu->policy->cur; boosted = tunables->boost_val || now < tunables->boostpulse_endtime; Loading Loading
drivers/cpufreq/cpufreq_interactive.c +9 −1 Original line number Diff line number Diff line Loading @@ -400,6 +400,7 @@ static void cpufreq_interactive_timer(unsigned long data) unsigned int index; unsigned long flags; bool boosted; struct cpufreq_govinfo int_info; if (!down_read_trylock(&pcpu->enable_sem)) return; Loading Loading @@ -438,8 +439,15 @@ static void cpufreq_interactive_timer(unsigned long data) do_div(cputime_speedadj, delta_time); } spin_lock_irqsave(&pcpu->target_freq_lock, flags); loadadjfreq = (unsigned int)cputime_speedadj * 100; int_info.cpu = data; int_info.load = loadadjfreq / pcpu->policy->max; int_info.sampling_rate_us = tunables->timer_rate; atomic_notifier_call_chain(&cpufreq_govinfo_notifier_list, CPUFREQ_LOAD_CHANGE, &int_info); spin_lock_irqsave(&pcpu->target_freq_lock, flags); cpu_load = loadadjfreq / pcpu->policy->cur; boosted = tunables->boost_val || now < tunables->boostpulse_endtime; Loading