The suspend mode can be engaged, but when I wake up the computer, the monitor stays off and the suspend LED is still on. After a few seconds (usually, the computer resumes immediately) the computer reboots. BTW: The computer is a IBM ThinkPad X41.
In my effort to narrow it down I tried a non-hardened 3.5.4 kernel, which suspends without any problems. Then I tried a hardened kernel with Grsecurity/PAX disabled and the problem reappeared; blank screen, suspend LED still on, this time the fan is being activated (might be random) and then the system reboots -- no kernel panic, nothing.
I tried to use the suspend debug technique described in
linux/Documentation/power/basic-pm-debugging.txt
to no avail.
A few weeks ago, I decided to take a look at the latest test patch set 3.6.9 -- downloaded it straight from grsecurity.net. Here another bug occured additionally, but this time I was able to narrow both bugs down:
1) When enabling PAX_MEMORY_UDEREF, I get a kernel panic in init as soon as init is started.
2) When enabling PAX_MPROTECT suspend-to-RAM stops working with the forementioned symptoms.
A few days ago I tried the latest patchset
grsecurity-2.9.1-3.6.10-201212101818.patch
Problem 1) disappeared (I now can use PAX_MEMORY_UDEREF without a kernel panic), but bug 2) still persists.
How can I provide information to narrow that thing down? As I said: I tried to use the CMOS-clock debugging technique for suspend-to-RAM described in the kernel documentation without success.
My kernel config, which provides working suspend, is here:
http://pastebin.com/VfNWWsK5
And this is a "diff" to the kernel configuration, with which my computer does not resume anymore.
- Code: Select all
--- 3/config 2012-12-12 22:41:23.785640073 +0100
+++ 4/config 2012-12-13 16:01:31.075705056 +0100
@@ -2776,6 +2776,7 @@
# Grsecurity
#
CONFIG_ARCH_TRACK_EXEC_LIMIT=y
+CONFIG_PAX_PER_CPU_PGD=y
CONFIG_PAX_USERCOPY_SLABS=y
CONFIG_GRKERNSEC=y
# CONFIG_GRKERNSEC_CONFIG_AUTO is not set
@@ -2811,8 +2812,9 @@
CONFIG_PAX_MPROTECT=y
# CONFIG_PAX_MPROTECT_COMPAT is not set
# CONFIG_PAX_ELFRELOCS is not set
-# CONFIG_PAX_KERNEXEC is not set
+CONFIG_PAX_KERNEXEC=y
CONFIG_PAX_KERNEXEC_PLUGIN_METHOD=""
+CONFIG_PAX_KERNEXEC_MODULE_TEXT=4
#
# Address Space Layout Randomization
Thanks for your time, Christian