Confused by function names cpuidle_install_idle_handler/cpuidle_uninstall_idle_handler

Mulyadi Santosa mulyadi.santosa at gmail.com
Tue Jul 22 06:54:19 EDT 2014


On Fri, Jul 18, 2014 at 11:07 PM, Mohammad Merajul Islam Molla
<meraj.enigma at gmail.com> wrote:
> Hello,
>
> In drivers/cpuidle/cpuidle.c, there are two functions
> cpuidle_install_idle_handler & cpuidle_uninstall_idle_handler. The
> names seem confusing to me as they don't install any handler, rather
> set 'initialized'  variable to 1/0.
>
> In v3.0 kernel, these functions used to look as below where they
> installed and uninstalled some handler function  -
>
> void cpuidle_install_idle_handler(void)
> 123 {
> 124         if (enabled_devices && (pm_idle != cpuidle_idle_call)) {
> 125                 /* Make sure all changes finished before we switch
> to new idle */
> 126                 smp_wmb();
> 127                 pm_idle = cpuidle_idle_call;
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pm_idle is the callback handler, and it is assigned to
cpuidle_idle_call. I think this what it means by "install"


-- 
regards,

Mulyadi Santosa
Freelance Linux trainer and consultant

blog: the-hydra.blogspot.com
training: mulyaditraining.blogspot.com



More information about the Kernelnewbies mailing list