Messages in this thread | | | Date | Mon, 28 Jul 2008 21:53:24 +0200 | From | Andi Kleen <> | Subject | Re: [PATCH] ACPI/CPUIDLE: prevent setting pm_idle to NULL |
| |
> The problem here is that the acpi/cpuidle code can be in a state where > the _save/old variables _ARE_ NULL because they had not been > initialized with the original pm_idle before the module is removed or > the cst state changes. So all we have to do is to prevent pm_idle to > be set to NULL.
It still seems wrong to me to fall back to the cpuidle idle function instead of the earlier idle function just because cpuidle was loaded in a weird way.
But yes mwait_idle could be set up later after the saving state. I suggested default_idle because it is safe, but yes it is probably not the optimal choice.
Perhaps to solve this cleanly we really need to go to a hierarchy of idle functions registered with priority instead of this fragile pointer saving/restoring.
-Andi
| |