https://bugzilla.kernel.org/show_bug.cgi?id=5471





--- Comment #12 from Thomas Renninger <tr...@suse.de>  2010-12-09 23:08:03 ---
This should not hold the patch off (took long enough until there finally showed
up a solution), just two comments:

It looks like this patch re-implements deep sleep state in smpboot.c?

1) Double sleeping
Looks like it's double sleeping in case of mwait is available, shouldn't it be
something like:
/* Returns error code if mwait is not available */
static inline *int* mwait_play_dead(void)
...
if (mwait_play_dead())
    hlt_play_dead();

2) This only works for mwait... 
Thinking of other possibilities for deep sleeping, namely IO triggered
C-states, this would not work?
Instead of double implementing deep sleep something like this would be a
cleaner way?:
if (cpuidle_driver_registered())
        cpuidle_enter_deepest_sleep();
else
    hlt_play_dead();

This would:
   - need the two functions being implemented in the cpuidle framework
   - not work as long as cpuidle drivers did not get registered..., but it
     shouldn't be a big deal, nobody offlines CPUs at boot time

-- 
Configure bugmail: https://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.

------------------------------------------------------------------------------
_______________________________________________
acpi-bugzilla mailing list
acpi-bugzilla@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/acpi-bugzilla

Reply via email to