[stable -3.14] PM backports for pm_test / CONFIG_PM_DEBUG

From: Brian Norris
Date: Wed Sep 03 2014 - 21:02:31 EST


Hi,

If I enable CONFIG_PM_DEBUG on a 3.14.y kernel, I can see the following
results:

# cat /sys/power/state
freeze standby mem
# cat /sys/power/pm_test
[none] core processors platform devices freezer
# echo core > /sys/power/pm_test
# cat /sys/power/state
[ 22.581289] Unsupported pm_test mode for freeze state, please choose none/freezer/devices/platform.
standby mem

Note how 'freeze' is dropped from the supported states, and I get an
extra printk message when I'm just checking if the state is valid.

It looks like if I backport a few fixes, I get more sane behavior, where
the warnings (and -EAGAIN) appear only when I actually try to enter an
unsupported test mode:

# echo core > /sys/power/pm_test
# cat /sys/power/state
freeze standby mem
# echo freeze > /sys/power/state
[ 27.833141] PM: Unsupported test mode for freeze state,please choose none/freezer/devices/platform.
sh: echo: write error: Resource temporarily unavailable

I think I've narrowed it down to this commit that should be backported
to -stable (for 3.9+?):

43e8317b0bba PM / sleep: Use valid_state() for platform-dependent sleep states only

But it needs to drag along this dependency too:

27ddcc6596e5 PM / sleep: Add state field to pm_states[] entries

While at this, it looks like this commit might be deserving of -stable
(3.9+). I haven't tested this one, as I don't have a good freeze+cpuidle
setup; it just shows up in the commit log with an interesting
description and a 'Fixes' tag:

f3f125324fc1 PM / suspend: Make cpuidle work in the "freeze" state

Regards,
Brian
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/