Kernel Patches Test Suspend States at Runtime

Nov 09, 2007

Two patches by Rafael J. Wysocki give users the ability to test suspend and hibernation modes at runtime to detect errors.

The first patch gives users the ability to test the suspend code (suspend to disk) without actually switching to suspend mode. This is a useful approach to discovering driver issues says the developer. The second patch modifies the current hibernation function (Suspend to RAM) source code to achieve the same objective. According to Wysocki, this works better than the current test modes as his code can also test globabl ACPI methods.

The test options add a new "/sys/power/pm_test_level" attribute which accepts numbers between 1 and 5. Each of these values simulates a different suspend or hibernation code level. Wysocki explains the individual values as follows. 5 test the freezing of individual processes. 4 additionally tests suspending of devices. Besides suspending processes and devices, 3 additionally tests platform global methods. 2 adds disabling of nonboot CPUs, and 1 simulates full system suspend.

The developer adds: "if a suspend is started by normal means, the suspend core will perform its normal operations up to the point indicated by the test level. Next, it will wait for 5 seconds and carry out the resume operations needed to transition the system back to the fully functional state". To avoid using the text system, you can set "pm_test_level" to 0. Wysocki’s third patch adds information on his test systems to the documentation.

Related content

  • Software Suspend

    Nearly all motherboards have a power management feature designed to power down the computer and put it into suspend mode. In real life, this feature does not always work. Linux has a software-based workaround for the dysfunctional suspend.

  • Free Software Projects

    A new status report on suspend and hibernate discusses the workings of, issues with, and future plans for power-saving modes in Linux.

  • Kernel News


  • Torvalds: Investigating ACPI Problems

    In a post on the Linux Kernel mailing list, Thomas Gleixner claims to have fixed ACPI suspend and resume problems. Linus Torvalds praised him for doing so, but also has his doubts.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More