* [PATCH][RFC] Documentation/: update hibernation debug documentation
@ 2016-08-11 12:18 Chen Yu
2016-08-12 6:22 ` Pavel Machek
0 siblings, 1 reply; 7+ messages in thread
From: Chen Yu @ 2016-08-11 12:18 UTC (permalink / raw)
To: Linux PM List
Cc: Rafael J. Wysocki, Pavel Machek, Len Brown, linux-kernel, Chen Yu
Update the description of test_resume mode for hibernation.
Signed-off-by: Chen Yu <yu.c.chen@intel.com>
---
Documentation/power/basic-pm-debugging.txt | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/Documentation/power/basic-pm-debugging.txt b/Documentation/power/basic-pm-debugging.txt
index b96098c..5f1f228 100644
--- a/Documentation/power/basic-pm-debugging.txt
+++ b/Documentation/power/basic-pm-debugging.txt
@@ -36,6 +36,13 @@ button to make the system resume).
If neither "platform" nor "shutdown" hibernation mode works, you will need to
identify what goes wrong.
+Besides, if all the modes described above work, "test_resume" mode can be used to
+verify if the snapshot data written to swap device can be successfully restored
+to memory:
+# echo test_resume > /sys/power/disk
+# echo disk > /sys/power/state
+If everything goes well, the system will resume back without BIOSes involved in.
+
a) Test modes of hibernation
To find out why hibernation fails on your system, you can use a special testing
--
2.7.4
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH][RFC] Documentation/: update hibernation debug documentation
2016-08-11 12:18 [PATCH][RFC] Documentation/: update hibernation debug documentation Chen Yu
@ 2016-08-12 6:22 ` Pavel Machek
2016-08-12 11:46 ` Chen, Yu C
0 siblings, 1 reply; 7+ messages in thread
From: Pavel Machek @ 2016-08-12 6:22 UTC (permalink / raw)
To: Chen Yu; +Cc: Linux PM List, Rafael J. Wysocki, Len Brown, linux-kernel
Hi!
> Update the description of test_resume mode for hibernation.
>
> Signed-off-by: Chen Yu <yu.c.chen@intel.com>
> ---
> Documentation/power/basic-pm-debugging.txt | 7 +++++++
> 1 file changed, 7 insertions(+)
That's certainly step in the right direction, but I guess it should be
mentioned in the other places, too. Something like this?
Additionally, we have testproc. Should we move it to test_proc for
consistency (or replace test_resume with simple "resume"? That's what
it does... it is hibernate+resume...
Thanks,
Pavel
diff --git a/Documentation/power/interface.txt b/Documentation/power/interface.txt
index f1f0f59a..d4ac8f7 100644
--- a/Documentation/power/interface.txt
+++ b/Documentation/power/interface.txt
@@ -23,8 +23,8 @@ few options for putting the system to sleep - using the platform driver
(e.g. ACPI or other suspend_ops), powering off the system or rebooting the
system (for testing).
-Additionally, /sys/power/disk can be used to turn on one of the two testing
-modes of the suspend-to-disk mechanism: 'testproc' or 'test'. If the
+Additionally, /sys/power/disk can be used to turn on one of the three testing
+modes of the suspend-to-disk mechanism: 'test_resume', 'testproc' or 'test'. If the
suspend-to-disk mechanism is in the 'testproc' mode, writing 'disk' to
/sys/power/state will cause the kernel to disable nonboot CPUs and freeze
tasks, wait for 5 seconds, unfreeze tasks and enable nonboot CPUs. If it is
@@ -32,12 +32,13 @@ in the 'test' mode, writing 'disk' to /sys/power/state will cause the kernel
to disable nonboot CPUs and freeze tasks, shrink memory, suspend devices, wait
for 5 seconds, resume devices, unfreeze tasks and enable nonboot CPUs. Then,
we are able to look in the log messages and work out, for example, which code
-is being slow and which device drivers are misbehaving.
+is being slow and which device drivers are misbehaving. In 'test_resume' mode,
+... (insert your description here).
Reading from this file will display all supported modes and the currently
selected one in brackets, for example
- [shutdown] reboot test testproc
+ [shutdown] reboot test testproc test_resume
Writing to this file will accept one of
> diff --git a/Documentation/power/basic-pm-debugging.txt b/Documentation/power/basic-pm-debugging.txt
> index b96098c..5f1f228 100644
> --- a/Documentation/power/basic-pm-debugging.txt
> +++ b/Documentation/power/basic-pm-debugging.txt
> @@ -36,6 +36,13 @@ button to make the system resume).
> If neither "platform" nor "shutdown" hibernation mode works, you will need to
> identify what goes wrong.
>
> +Besides, if all the modes described above work, "test_resume" mode can be used to
> +verify if the snapshot data written to swap device can be successfully restored
> +to memory:
> +# echo test_resume > /sys/power/disk
> +# echo disk > /sys/power/state
> +If everything goes well, the system will resume back without BIOSes involved in.
> +
> a) Test modes of hibernation
>
> To find out why hibernation fails on your system, you can use a special testing
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
^ permalink raw reply related [flat|nested] 7+ messages in thread
* RE: [PATCH][RFC] Documentation/: update hibernation debug documentation
2016-08-12 6:22 ` Pavel Machek
@ 2016-08-12 11:46 ` Chen, Yu C
2016-08-12 11:53 ` Rafael J. Wysocki
0 siblings, 1 reply; 7+ messages in thread
From: Chen, Yu C @ 2016-08-12 11:46 UTC (permalink / raw)
To: Pavel Machek; +Cc: Linux PM List, Rafael J. Wysocki, Len Brown, linux-kernel
Hi Pavel,
> -----Original Message-----
> From: Pavel Machek [mailto:pavel@ucw.cz]
> Sent: Friday, August 12, 2016 2:23 PM
> To: Chen, Yu C
> Cc: Linux PM List; Rafael J. Wysocki; Len Brown; linux-kernel@vger.kernel.org
> Subject: Re: [PATCH][RFC] Documentation/: update hibernation debug
> documentation
>
> Hi!
>
> > Update the description of test_resume mode for hibernation.
> >
> > Signed-off-by: Chen Yu <yu.c.chen@intel.com>
> > ---
> > Documentation/power/basic-pm-debugging.txt | 7 +++++++
> > 1 file changed, 7 insertions(+)
>
> That's certainly step in the right direction, but I guess it should be mentioned in
> the other places, too. Something like this?
>
> Additionally, we have testproc. Should we move it to test_proc for consistency
> (or replace test_resume with simple "resume"? That's what it does... it is
> hibernate+resume...
It looks like testproc has been removed in
commit 48580ab8729865c81e148d59159fbe2aa7865511,
so I think we can replace 'testproc/test' with 'resume' in interface.txt and add some description in it,
I'll do that, thanks.
Yu
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH][RFC] Documentation/: update hibernation debug documentation
2016-08-12 11:46 ` Chen, Yu C
@ 2016-08-12 11:53 ` Rafael J. Wysocki
2016-08-12 11:55 ` Chen, Yu C
0 siblings, 1 reply; 7+ messages in thread
From: Rafael J. Wysocki @ 2016-08-12 11:53 UTC (permalink / raw)
To: Chen, Yu C
Cc: Pavel Machek, Linux PM List, Rafael J. Wysocki, Len Brown, linux-kernel
On Fri, Aug 12, 2016 at 1:46 PM, Chen, Yu C <yu.c.chen@intel.com> wrote:
> Hi Pavel,
>
>> -----Original Message-----
>> From: Pavel Machek [mailto:pavel@ucw.cz]
>> Sent: Friday, August 12, 2016 2:23 PM
>> To: Chen, Yu C
>> Cc: Linux PM List; Rafael J. Wysocki; Len Brown; linux-kernel@vger.kernel.org
>> Subject: Re: [PATCH][RFC] Documentation/: update hibernation debug
>> documentation
>>
>> Hi!
>>
>> > Update the description of test_resume mode for hibernation.
>> >
>> > Signed-off-by: Chen Yu <yu.c.chen@intel.com>
>> > ---
>> > Documentation/power/basic-pm-debugging.txt | 7 +++++++
>> > 1 file changed, 7 insertions(+)
>>
>> That's certainly step in the right direction, but I guess it should be mentioned in
>> the other places, too. Something like this?
>>
>> Additionally, we have testproc. Should we move it to test_proc for consistency
>> (or replace test_resume with simple "resume"? That's what it does... it is
>> hibernate+resume...
> It looks like testproc has been removed in
> commit 48580ab8729865c81e148d59159fbe2aa7865511,
Yes, it was removed, back in 2011.
> so I think we can replace 'testproc/test' with 'resume' in interface.txt and add some description in it,
> I'll do that, thanks.
You mean "test_resume" I suppose?
Clearly, the documentation needs to be updated.
Let me take care of that later today.
Thanks,
Rafael
^ permalink raw reply [flat|nested] 7+ messages in thread
* RE: [PATCH][RFC] Documentation/: update hibernation debug documentation
2016-08-12 11:53 ` Rafael J. Wysocki
@ 2016-08-12 11:55 ` Chen, Yu C
2016-08-12 13:31 ` Rafael J. Wysocki
0 siblings, 1 reply; 7+ messages in thread
From: Chen, Yu C @ 2016-08-12 11:55 UTC (permalink / raw)
To: Rafael J. Wysocki
Cc: Pavel Machek, Linux PM List, Rafael J. Wysocki, Len Brown, linux-kernel
> -----Original Message-----
> From: rjwysocki@gmail.com [mailto:rjwysocki@gmail.com] On Behalf Of
> Rafael J. Wysocki
> Sent: Friday, August 12, 2016 7:54 PM
> To: Chen, Yu C
> Cc: Pavel Machek; Linux PM List; Rafael J. Wysocki; Len Brown; linux-
> kernel@vger.kernel.org
> Subject: Re: [PATCH][RFC] Documentation/: update hibernation debug
> documentation
>
> On Fri, Aug 12, 2016 at 1:46 PM, Chen, Yu C <yu.c.chen@intel.com> wrote:
> > Hi Pavel,
> >
> >> -----Original Message-----
> >> From: Pavel Machek [mailto:pavel@ucw.cz]
> >> Sent: Friday, August 12, 2016 2:23 PM
> >> To: Chen, Yu C
> >> Cc: Linux PM List; Rafael J. Wysocki; Len Brown;
> >> linux-kernel@vger.kernel.org
> >> Subject: Re: [PATCH][RFC] Documentation/: update hibernation debug
> >> documentation
> >>
> >> Hi!
> >>
> >> > Update the description of test_resume mode for hibernation.
> >> >
> >> > Signed-off-by: Chen Yu <yu.c.chen@intel.com>
> >> > ---
> >> > Documentation/power/basic-pm-debugging.txt | 7 +++++++
> >> > 1 file changed, 7 insertions(+)
> >>
> >> That's certainly step in the right direction, but I guess it should
> >> be mentioned in the other places, too. Something like this?
> >>
> >> Additionally, we have testproc. Should we move it to test_proc for
> >> consistency (or replace test_resume with simple "resume"? That's what
> >> it does... it is
> >> hibernate+resume...
> > It looks like testproc has been removed in commit
> > 48580ab8729865c81e148d59159fbe2aa7865511,
>
> Yes, it was removed, back in 2011.
>
> > so I think we can replace 'testproc/test' with 'resume' in
> > interface.txt and add some description in it, I'll do that, thanks.
>
> You mean "test_resume" I suppose?
Yes.
>
> Clearly, the documentation needs to be updated.
>
> Let me take care of that later today.
OK, thanks!
Yu
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH][RFC] Documentation/: update hibernation debug documentation
2016-08-12 11:55 ` Chen, Yu C
@ 2016-08-12 13:31 ` Rafael J. Wysocki
2016-08-12 21:56 ` Pavel Machek
0 siblings, 1 reply; 7+ messages in thread
From: Rafael J. Wysocki @ 2016-08-12 13:31 UTC (permalink / raw)
To: Chen, Yu C
Cc: Rafael J. Wysocki, Pavel Machek, Linux PM List, Len Brown, linux-kernel
On Friday, August 12, 2016 11:55:43 AM Chen, Yu C wrote:
>
> > -----Original Message-----
> > From: rjwysocki@gmail.com [mailto:rjwysocki@gmail.com] On Behalf Of
> > Rafael J. Wysocki
> > Sent: Friday, August 12, 2016 7:54 PM
> > To: Chen, Yu C
> > Cc: Pavel Machek; Linux PM List; Rafael J. Wysocki; Len Brown; linux-
> > kernel@vger.kernel.org
> > Subject: Re: [PATCH][RFC] Documentation/: update hibernation debug
> > documentation
> >
> > On Fri, Aug 12, 2016 at 1:46 PM, Chen, Yu C <yu.c.chen@intel.com> wrote:
> > > Hi Pavel,
> > >
> > >> -----Original Message-----
> > >> From: Pavel Machek [mailto:pavel@ucw.cz]
> > >> Sent: Friday, August 12, 2016 2:23 PM
> > >> To: Chen, Yu C
> > >> Cc: Linux PM List; Rafael J. Wysocki; Len Brown;
> > >> linux-kernel@vger.kernel.org
> > >> Subject: Re: [PATCH][RFC] Documentation/: update hibernation debug
> > >> documentation
> > >>
> > >> Hi!
> > >>
> > >> > Update the description of test_resume mode for hibernation.
> > >> >
> > >> > Signed-off-by: Chen Yu <yu.c.chen@intel.com>
> > >> > ---
> > >> > Documentation/power/basic-pm-debugging.txt | 7 +++++++
> > >> > 1 file changed, 7 insertions(+)
> > >>
> > >> That's certainly step in the right direction, but I guess it should
> > >> be mentioned in the other places, too. Something like this?
> > >>
> > >> Additionally, we have testproc. Should we move it to test_proc for
> > >> consistency (or replace test_resume with simple "resume"? That's what
> > >> it does... it is
> > >> hibernate+resume...
> > > It looks like testproc has been removed in commit
> > > 48580ab8729865c81e148d59159fbe2aa7865511,
> >
> > Yes, it was removed, back in 2011.
> >
> > > so I think we can replace 'testproc/test' with 'resume' in
> > > interface.txt and add some description in it, I'll do that, thanks.
> >
> > You mean "test_resume" I suppose?
> Yes.
> >
> > Clearly, the documentation needs to be updated.
> >
> > Let me take care of that later today.
> OK, thanks!
OK, there you go.
Thanks,
Rafael
---
From: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Subject: [PATCH] PM / sleep: Update some system sleep documentation
Update some documentation related to system sleep to document new
features and remove outdated information from it.
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
---
Documentation/power/basic-pm-debugging.txt | 27 +++++
Documentation/power/interface.txt | 140 ++++++++++++++---------------
2 files changed, 96 insertions(+), 71 deletions(-)
Index: linux-pm/Documentation/power/interface.txt
===================================================================
--- linux-pm.orig/Documentation/power/interface.txt
+++ linux-pm/Documentation/power/interface.txt
@@ -1,75 +1,75 @@
-Power Management Interface
+Power Management Interface for System Sleep
+Copyright (c) 2016 Intel Corp., Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-The power management subsystem provides a unified sysfs interface to
-userspace, regardless of what architecture or platform one is
-running. The interface exists in /sys/power/ directory (assuming sysfs
-is mounted at /sys).
-
-/sys/power/state controls system power state. Reading from this file
-returns what states are supported, which is hard-coded to 'freeze',
-'standby' (Power-On Suspend), 'mem' (Suspend-to-RAM), and 'disk'
-(Suspend-to-Disk).
-
-Writing to this file one of those strings causes the system to
-transition into that state. Please see the file
-Documentation/power/states.txt for a description of each of those
-states.
-
-
-/sys/power/disk controls the operating mode of the suspend-to-disk
-mechanism. Suspend-to-disk can be handled in several ways. We have a
-few options for putting the system to sleep - using the platform driver
-(e.g. ACPI or other suspend_ops), powering off the system or rebooting the
-system (for testing).
-
-Additionally, /sys/power/disk can be used to turn on one of the two testing
-modes of the suspend-to-disk mechanism: 'testproc' or 'test'. If the
-suspend-to-disk mechanism is in the 'testproc' mode, writing 'disk' to
-/sys/power/state will cause the kernel to disable nonboot CPUs and freeze
-tasks, wait for 5 seconds, unfreeze tasks and enable nonboot CPUs. If it is
-in the 'test' mode, writing 'disk' to /sys/power/state will cause the kernel
-to disable nonboot CPUs and freeze tasks, shrink memory, suspend devices, wait
-for 5 seconds, resume devices, unfreeze tasks and enable nonboot CPUs. Then,
-we are able to look in the log messages and work out, for example, which code
-is being slow and which device drivers are misbehaving.
-
-Reading from this file will display all supported modes and the currently
-selected one in brackets, for example
-
- [shutdown] reboot test testproc
-
-Writing to this file will accept one of
-
- 'platform' (only if the platform supports it)
- 'shutdown'
- 'reboot'
- 'testproc'
- 'test'
-
-/sys/power/image_size controls the size of the image created by
-the suspend-to-disk mechanism. It can be written a string
-representing a non-negative integer that will be used as an upper
-limit of the image size, in bytes. The suspend-to-disk mechanism will
-do its best to ensure the image size will not exceed that number. However,
-if this turns out to be impossible, it will try to suspend anyway using the
-smallest image possible. In particular, if "0" is written to this file, the
-suspend image will be as small as possible.
-
-Reading from this file will display the current image size limit, which
-is set to 2/5 of available RAM by default.
-
-/sys/power/pm_trace controls the code which saves the last PM event point in
-the RTC across reboots, so that you can debug a machine that just hangs
-during suspend (or more commonly, during resume). Namely, the RTC is only
-used to save the last PM event point if this file contains '1'. Initially it
-contains '0' which may be changed to '1' by writing a string representing a
-nonzero integer into it.
+The power management subsystem provides userspace with a unified sysfs interface
+for system sleep regardless of the underlying system architecture or platform.
+The interface is located in the /sys/power/ directory (assuming that sysfs is
+mounted at /sys).
-To use this debugging feature you should attempt to suspend the machine, then
-reboot it and run
+/sys/power/state is the system sleep state control file.
- dmesg -s 1000000 | grep 'hash matches'
+Reading from it returns a list of supported sleep states, encoded as:
-CAUTION: Using it will cause your machine's real-time (CMOS) clock to be
-set to a random invalid time after a resume.
+'freeze' (Suspend-to-Idle)
+'standby' (Power-On Suspend)
+'mem' (Suspend-to-RAM)
+'disk' (Suspend-to-Disk)
+
+Suspend-to-Idle is always supported. Suspend-to-Disk is always supported
+too as long the kernel has been configured to support hibernation at all
+(ie. CONFIG_HIBERNATION is set in the kernel configuration file). Support
+for Suspend-to-RAM and Power-On Suspend depends on the capabilities of the
+platform.
+
+If one of the strings listed in /sys/power/state is writtent to it, the system
+will attempt to transition into the corresponding sleep state. Refer to
+Documentation/power/states.txt for a description of each of those states.
+
+/sys/power/disk controls the operating mode of hibernation (Suspend-to-Disk).
+Specifically, it tells the kernel what to do after creating a hibernation image.
+
+Reading from it returs a list of supported options encoded as:
+
+'platform' (put the system into sleep using a platform-provided method)
+'shutdown' (shut the system down)
+'reboot' (reboot the system)
+'suspend' (trigger a Suspend-to-RAM transition)
+'test_resume' (resume-after-hibernation test mode)
+
+The currently selected option is printed in brackets.
+
+The 'platform' option is only available if the platform provides a special
+mechanism to put the system to sleep after creating a hibernation image (ACPI
+does that, for example). The 'suspend' option is available if Suspend-to-RAM
+is supported. Refer to Documentation/power/basic_pm_debugging.txt for the
+description of the 'test_resume' option.
+
+To select an option, write the string representing it to /sys/power/disk.
+
+/sys/power/image_size controls the size of hibernation images.
+
+It can be written a string representing a non-negative integer that will be
+used as a best-effort upper limit of the image size, in bytes. The hibernation
+core will do its best to ensure that the image size will not exceed that number.
+However, if that turns out to be impossible to achieve, a hibernation image will
+still be created and its size will be as small as possible. In particular,
+writing '0' to this file will enforce hibernation images to be possibly small.
+
+Reading from this file returns the current image size limit, which is set to
+around 2/5 of available RAM by default.
+
+/sys/power/pm_trace controls the PM trace mechanism saving the last suspend
+or resume event point in the RTC across reboots.
+
+It helps to debug hard lockups or reboots due to device driver failures that
+occur during system suspend or resume (which is more common) more effectively.
+
+If /sys/power/pm_trace contains '1', the fingerprint of each suspend/resume
+event point in turn will be stored in the RTC memory (overwriting the actual
+RTC information), so it will survive a system crash if one occurs right after
+storing it and it can be used later to identify the driver that caused the crash
+to happen (see Documentation/power/s2ram.txt for more information).
+
+Initially it contains '0' which may be changed to '1' by writing a string
+representing a nonzero integer into it.
Index: linux-pm/Documentation/power/basic-pm-debugging.txt
===================================================================
--- linux-pm.orig/Documentation/power/basic-pm-debugging.txt
+++ linux-pm/Documentation/power/basic-pm-debugging.txt
@@ -164,7 +164,32 @@ load n/2 modules more and try again.
Again, if you find the offending module(s), it(they) must be unloaded every time
before hibernation, and please report the problem with it(them).
-c) Advanced debugging
+c) Using the "test_resume" hibernation option
+
+/sys/power/disk generally tells the kernel what to do after creating a
+hibernation image. One of the available options is "test_resume" which
+causes the just created image to be used for immediate restoration. Namely,
+after doing:
+
+# echo test_resume > /sys/power/disk
+# echo disk > /sys/power/state
+
+a hibernation image will be created and a resume from it will be triggered
+immediately without involving the platform firmware in any way.
+
+That test can be used to check if failres to resume from hibernation are related
+to bad interactions with the platform firmware. That is, if the above works
+every time, but resume from actual hibernation does not work or is unreliable,
+the platform firmware may be responsible for the failures.
+
+On architectures and platforms that support using different kernels to restore
+hibernation images (that is, the kernel used to read the image from storage and
+load it into memory is different from the one included in the image) or support
+kernel address space randomization, it also can be used to check if failures
+to resume may be related to the differences between the restore and image
+kernels.
+
+d) Advanced debugging
In case that hibernation does not work on your system even in the minimal
configuration and compiling more drivers as modules is not practical or some
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH][RFC] Documentation/: update hibernation debug documentation
2016-08-12 13:31 ` Rafael J. Wysocki
@ 2016-08-12 21:56 ` Pavel Machek
0 siblings, 0 replies; 7+ messages in thread
From: Pavel Machek @ 2016-08-12 21:56 UTC (permalink / raw)
To: Rafael J. Wysocki
Cc: Chen, Yu C, Rafael J. Wysocki, Linux PM List, Len Brown, linux-kernel
Hi!
> Index: linux-pm/Documentation/power/interface.txt
> ===================================================================
> --- linux-pm.orig/Documentation/power/interface.txt
> +++ linux-pm/Documentation/power/interface.txt
...
> -CAUTION: Using it will cause your machine's real-time (CMOS) clock to be
> -set to a random invalid time after a resume.
> +'freeze' (Suspend-to-Idle)
> +'standby' (Power-On Suspend)
> +'mem' (Suspend-to-RAM)
> +'disk' (Suspend-to-Disk)
> +
> +Suspend-to-Idle is always supported. Suspend-to-Disk is always supported
> +too as long the kernel has been configured to support hibernation at all
> +(ie. CONFIG_HIBERNATION is set in the kernel configuration file). Support
> +for Suspend-to-RAM and Power-On Suspend depends on the capabilities of the
> +platform.
> +
> +If one of the strings listed in /sys/power/state is writtent to it, the system
Typo at writtent.
> +will attempt to transition into the corresponding sleep state. Refer to
> +Documentation/power/states.txt for a description of each of those states.
> +
> +/sys/power/disk controls the operating mode of hibernation (Suspend-to-Disk).
> +Specifically, it tells the kernel what to do after creating a hibernation image.
> +
> +Reading from it returs a list of supported options encoded as:
> +
> +'platform' (put the system into sleep using a platform-provided method)
> +'shutdown' (shut the system down)
> +'reboot' (reboot the system)
> +'suspend' (trigger a Suspend-to-RAM transition)
> +'test_resume' (resume-after-hibernation test mode)
> +
> +The currently selected option is printed in brackets.
-> in square brackets ("[]")?
> +The 'platform' option is only available if the platform provides a special
> +mechanism to put the system to sleep after creating a hibernation image (ACPI
> +does that, for example). The 'suspend' option is available if Suspend-to-RAM
> +is supported. Refer to Documentation/power/basic_pm_debugging.txt for the
> +description of the 'test_resume' option.
> +
> +To select an option, write the string representing it to /sys/power/disk.
> +
> +/sys/power/image_size controls the size of hibernation images.
> +
> +It can be written a string representing a non-negative integer that will be
> +used as a best-effort upper limit of the image size, in bytes. The hibernation
> +core will do its best to ensure that the image size will not exceed that number.
> +However, if that turns out to be impossible to achieve, a hibernation image will
> +still be created and its size will be as small as possible. In particular,
> +writing '0' to this file will enforce hibernation images to be possibly small.
-> as small as possible.
> +On architectures and platforms that support using different kernels to restore
> +hibernation images (that is, the kernel used to read the image from storage and
> +load it into memory is different from the one included in the image) or support
> +kernel address space randomization, it also can be used to check if failures
> +to resume may be related to the differences between the restore and image
> +kernels.
Hmm. Actually we should document which architectures support suspend &
restore in different kernel... somewhere.
Acked-by: Pavel Machek <pavel@ucw.cz>
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2016-08-12 21:56 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-08-11 12:18 [PATCH][RFC] Documentation/: update hibernation debug documentation Chen Yu
2016-08-12 6:22 ` Pavel Machek
2016-08-12 11:46 ` Chen, Yu C
2016-08-12 11:53 ` Rafael J. Wysocki
2016-08-12 11:55 ` Chen, Yu C
2016-08-12 13:31 ` Rafael J. Wysocki
2016-08-12 21:56 ` Pavel Machek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).