* swsusp documentation updates
@ 2004-05-05 9:47 Pavel Machek
2004-05-05 9:55 ` Nigel Cunningham
2004-05-05 11:00 ` Romano Giannetti
0 siblings, 2 replies; 10+ messages in thread
From: Pavel Machek @ 2004-05-05 9:47 UTC (permalink / raw)
To: Andrew Morton, Rusty trivial patch monkey Russell, kernel list
Hi!
I'd like this to be included. People ask question I should have
answered in the documentation.
Pavel
--- clean/Documentation/power/swsusp.txt 2004-02-05 01:53:53.000000000 +0100
+++ linux/Documentation/power/swsusp.txt 2004-05-04 23:36:26.000000000 +0200
@@ -123,10 +123,61 @@
replace ethernet card, resume. If you are fast your users will not
even see broken connections.
-Any other idea you might have tell me!
+Q: Maybe I'm missing something, but why doesn't the regular io paths
+work?
-Contacting the author
-If you have any question or any patch that solves the above or detected
-problems please contact me at seasons@falcon.sch.bme.hu. I might delay
-answering, sorry about that.
+A: (Basically) you want to replace all kernel data with kernel data saved
+on disk. How do you do that using normal i/o paths? If you'll read
+"new" data 4KB at a time, you'll crash... because you still need "old"
+data to do the reading, and "new" data may fit on same physical spot
+in memory.
+There are two solutions to this:
+
+* require half of memory to be free during suspend. That way you can
+read "new" data onto free spots, then cli and copy
+
+* assume we had special "polling" ide driver that only uses memory
+between 0-640KB. That way, I'd have to make sure that 0-640KB is free
+during suspending, but otherwise it would work...
+
+Q: Does linux support ACPI S4?
+
+A: No.
+
+When swsusp was created, ACPI was not too widespread, so we tried to
+avoid using ACPI-specific stuff. ACPI also is/was notoriously
+buggy. These days swsusp works on APM-only i386 machines and even
+without any power managment at all. Some versions also work on PPC.
+
+That means that machine does not enter S4 on suspend-to-disk, but
+simply enters S5. That has few advantages, you can for example boot
+windows on next boot, and return to your Linux session later. You
+could even have few different Linuxes on your box (not sharing any
+partitions), and switch between them.
+
+It also has disadvantages. On HP nx5000, if you unplug power cord
+while machine is suspended-to-disk, Linux will fail to notice that.
+
+Q: My machine doesn't work with ACPI. How can I use swsusp than ?
+
+A: Do reboot() syscall with right parameters. Warning: glibc gets in
+its way, so check with strace:
+
+reboot(LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2, 0xd000fce2)
+
+(Thanks to Peter Osterlund:)
+
+#include <unistd.h>
+#include <syscall.h>
+
+#define LINUX_REBOOT_MAGIC1 0xfee1dead
+#define LINUX_REBOOT_MAGIC2 672274793
+#define LINUX_REBOOT_CMD_SW_SUSPEND 0xD000FCE2
+
+int main()
+{
+ syscall(SYS_reboot, LINUX_REBOOT_MAGIC1, LINUX_REBOOT_MAGIC2,
+ LINUX_REBOOT_CMD_SW_SUSPEND, 0);
+ return 0;
+}
--
934a471f20d6580d5aad759bf0d97ddc
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: swsusp documentation updates
2004-05-05 9:47 Pavel Machek
@ 2004-05-05 9:55 ` Nigel Cunningham
2004-05-05 10:11 ` Pavel Machek
2004-05-05 11:00 ` Romano Giannetti
1 sibling, 1 reply; 10+ messages in thread
From: Nigel Cunningham @ 2004-05-05 9:55 UTC (permalink / raw)
To: Pavel Machek
Cc: Andrew Morton, Rusty trivial patch monkey Russell,
Linux Kernel Mailing List
Howdy.
On Wed, 2004-05-05 at 19:47, Pavel Machek wrote:
> +There are two solutions to this:
> +
> +* require half of memory to be free during suspend. That way you can
> +read "new" data onto free spots, then cli and copy
Would you consider adding:
(Suspend2, which allows more than half of memory to be saved, is a
variant on this).
Regards,
Nigel
--
Nigel & Michelle Cunningham
C/- Westminster Presbyterian Church Belconnen
61 Templeton Street, Cook, ACT 2614.
+61 (2) 6251 7727(wk); +61 (2) 6254 0216 (home)
Evolution (n): A hypothetical process whereby infinitely improbable events occur
with alarming frequency, order arises from chaos, and no one is given credit.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: swsusp documentation updates
2004-05-05 9:55 ` Nigel Cunningham
@ 2004-05-05 10:11 ` Pavel Machek
2004-05-05 21:03 ` Nigel Cunningham
2004-05-05 23:10 ` Nigel Cunningham
0 siblings, 2 replies; 10+ messages in thread
From: Pavel Machek @ 2004-05-05 10:11 UTC (permalink / raw)
To: Nigel Cunningham
Cc: Andrew Morton, Rusty trivial patch monkey Russell,
Linux Kernel Mailing List
Hi!
> > +There are two solutions to this:
> > +
> > +* require half of memory to be free during suspend. That way you can
> > +read "new" data onto free spots, then cli and copy
>
> Would you consider adding:
>
> (Suspend2, which allows more than half of memory to be saved, is a
> variant on this).
How would you like this added?
swsusp2 shares this fundamental limitation, but does not include user
data and disk caches into "used memory" by saving them in
advance. That means that limitation goes away in practice.
And perhaps you want to write "What is swsusp2?" question/answer?
Pavel
--
934a471f20d6580d5aad759bf0d97ddc
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: swsusp documentation updates
2004-05-05 9:47 Pavel Machek
2004-05-05 9:55 ` Nigel Cunningham
@ 2004-05-05 11:00 ` Romano Giannetti
2004-05-05 11:09 ` Pavel Machek
1 sibling, 1 reply; 10+ messages in thread
From: Romano Giannetti @ 2004-05-05 11:00 UTC (permalink / raw)
To: Pavel Machek; +Cc: kernel list
On Wed, May 05, 2004 at 11:47:19AM +0200, Pavel Machek wrote:
> Hi!
>
> I'd like this to be included. People ask question I should have
> answered in the documentation.
> +
> +Q: Does linux support ACPI S4?
> +
> +A: No.
> +
...that is auite surprising, meaning that I haven't understood anything till
now. I have a Sony vaio (http://perso.wanadoo.es/r_mano/vaio/vaio.html),
with ACPI compiled in, and I did suspend with echo 4 > /proc/acpi/sleep...
...retreating in my shell...
Romano
--
Romano Giannetti - Univ. Pontificia Comillas (Madrid, Spain)
Electronic Engineer - phone +34 915 422 800 ext 2416 fax +34 915 596 569
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: swsusp documentation updates
2004-05-05 11:00 ` Romano Giannetti
@ 2004-05-05 11:09 ` Pavel Machek
0 siblings, 0 replies; 10+ messages in thread
From: Pavel Machek @ 2004-05-05 11:09 UTC (permalink / raw)
To: Romano Giannetti, kernel list
Hi!
> > I'd like this to be included. People ask question I should have
> > answered in the documentation.
>
> > +
> > +Q: Does linux support ACPI S4?
> > +
> > +A: No.
> > +
>
> ...that is auite surprising, meaning that I haven't understood anything till
> now. I have a Sony vaio (http://perso.wanadoo.es/r_mano/vaio/vaio.html),
> with ACPI compiled in, and I did suspend with echo 4 > /proc/acpi/sleep...
>
> ...retreating in my shell...
No, echo 4 > /proc/acpi/sleep should suspend your machine; but it will
not be true "ACPI S4" sleep. It is just suspend to disk. ACPI thinks
machine is in S5.
Pavel
--
934a471f20d6580d5aad759bf0d97ddc
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: swsusp documentation updates
2004-05-05 10:11 ` Pavel Machek
@ 2004-05-05 21:03 ` Nigel Cunningham
2004-05-05 23:10 ` Nigel Cunningham
1 sibling, 0 replies; 10+ messages in thread
From: Nigel Cunningham @ 2004-05-05 21:03 UTC (permalink / raw)
To: Pavel Machek
Cc: Andrew Morton, Rusty trivial patch monkey Russell,
Linux Kernel Mailing List
Howdy.
On Wed, 2004-05-05 at 20:11, Pavel Machek wrote:
> Hi!
>
> > > +There are two solutions to this:
> > > +
> > > +* require half of memory to be free during suspend. That way you can
> > > +read "new" data onto free spots, then cli and copy
> >
> > Would you consider adding:
> >
> > (Suspend2, which allows more than half of memory to be saved, is a
> > variant on this).
>
> How would you like this added?
Well, I was thinking of simply adding the above in brackets on the same
or the next line.
> swsusp2 shares this fundamental limitation, but does not include user
> data and disk caches into "used memory" by saving them in
> advance. That means that limitation goes away in practice.
>
> And perhaps you want to write "What is swsusp2?" question/answer?
I'm avoiding calling it swsusp2 because 'swsusp' is unpronouncable. It
also gets different interpretations: suspend2 isn't 'swap suspend'
because it's not inherently limited to saving to swap. 'software
suspend' is too long and doesn't seem to occur as quickly. Thus I'm
simply using suspend2.
Regards,
Nigel
--
Nigel & Michelle Cunningham
C/- Westminster Presbyterian Church Belconnen
61 Templeton Street, Cook, ACT 2614.
+61 (2) 6251 7727(wk); +61 (2) 6254 0216 (home)
Evolution (n): A hypothetical process whereby infinitely improbable events occur
with alarming frequency, order arises from chaos, and no one is given credit.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: swsusp documentation updates
@ 2004-05-05 21:43 Karol Kozimor
0 siblings, 0 replies; 10+ messages in thread
From: Karol Kozimor @ 2004-05-05 21:43 UTC (permalink / raw)
To: Pavel Machek; +Cc: Andrew Morton, linux-kernel, acpi-devel, swsusp-devel
<linux-kernel@vger.kernel.org>, acpi, swsusp
Bcc:
Subject: Re: swsusp documentation updates
Reply-To:
In-Reply-To: <1Srcw-5NU-25@gated-at.bofh.it>
Thus wrote Pavel Machek:
> +Q: Does linux support ACPI S4?
> +
> +A: No.
I believe pmdisk uses proper S4 by default.
> +That means that machine does not enter S4 on suspend-to-disk, but
> +simply enters S5. That has few advantages, you can for example boot
> +windows on next boot, and return to your Linux session later. You
> +could even have few different Linuxes on your box (not sharing any
> +partitions), and switch between them.
That's bogus. Entering S4 does not prevent booting multiple systems, or at
least the ACPI spec does not contradict this possibility. S4 and S5 are
nearly identical in that matter (see section 9.1.4).
> +It also has disadvantages. On HP nx5000, if you unplug power cord
> +while machine is suspended-to-disk, Linux will fail to notice that.
Hmm, people were reporting that on the swsusp mailing list. The
aforementioned section contains some notes about hardware state changes
over suspend, but I don't really know if Linux makes use of that.
Apart from that, there seem to differences in handling PMEs -- the RTC
alarm event works fine for me if the box enters S4 and does not if it's at
S5. Wake-On-LAN may suffer the same problems, depending on the machine.
If I may suggest something, it would be stupid to turn down S4 completely,
especially that infrastructure to chose S4 over pm_power_off() already
exists (/sys/power/).
Best regards,
--
Karol 'sziwan' Kozimor
sziwan@hell.org.pl
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: swsusp documentation updates
2004-05-05 10:11 ` Pavel Machek
2004-05-05 21:03 ` Nigel Cunningham
@ 2004-05-05 23:10 ` Nigel Cunningham
2004-05-11 2:51 ` Pavel Machek
1 sibling, 1 reply; 10+ messages in thread
From: Nigel Cunningham @ 2004-05-05 23:10 UTC (permalink / raw)
To: Pavel Machek
Cc: Andrew Morton, Rusty trivial patch monkey Russell,
Linux Kernel Mailing List
Hi.
On Wed, 2004-05-05 at 20:11, Pavel Machek wrote:
> Hi!
>
> > > +There are two solutions to this:
> > > +
> > > +* require half of memory to be free during suspend. That way you can
> > > +read "new" data onto free spots, then cli and copy
> >
> > Would you consider adding:
> >
> > (Suspend2, which allows more than half of memory to be saved, is a
> > variant on this).
>
> How would you like this added?
>
> swsusp2 shares this fundamental limitation, but does not include user
> data and disk caches into "used memory" by saving them in
> advance. That means that limitation goes away in practice.
That sounds good. I'd include that.
> And perhaps you want to write "What is swsusp2?" question/answer?
How does this sound?...
What is 'swsusp2'?
swsusp2 is Software Suspend 2, forked implementation of suspend-to-disk
which is available as separate patches for 2.4 and 2.6 kernels from
swsusp.sourceforge.net. It includes support for SMP, 4GB Highmem and
preemption. It also has a extensible architecture that allows for
arbitrary transformations on the image (compression, encryption) and
arbitrary backends for writing the image (eg to swap or an NFS
share[Work In Progress]). Questions regarding suspend2 should be sent to
the mailing list available through the Suspend2 website, and not to the
Linux Kernel Mailing List. We are working toward merging Suspend2 into
the mainline kernel.
--
Nigel & Michelle Cunningham
C/- Westminster Presbyterian Church Belconnen
61 Templeton Street, Cook, ACT 2614.
+61 (2) 6251 7727(wk); +61 (2) 6254 0216 (home)
Evolution (n): A hypothetical process whereby infinitely improbable events occur
with alarming frequency, order arises from chaos, and no one is given credit.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: swsusp documentation updates
2004-05-05 23:10 ` Nigel Cunningham
@ 2004-05-11 2:51 ` Pavel Machek
2004-05-11 22:45 ` Nigel Cunningham
0 siblings, 1 reply; 10+ messages in thread
From: Pavel Machek @ 2004-05-11 2:51 UTC (permalink / raw)
To: Nigel Cunningham
Cc: Andrew Morton, Rusty trivial patch monkey Russell,
Linux Kernel Mailing List
Hi!
> > And perhaps you want to write "What is swsusp2?" question/answer?
>
> How does this sound?...
>
> What is 'swsusp2'?
>
> swsusp2 is Software Suspend 2, forked implementation of suspend-to-disk
> which is available as separate patches for 2.4 and 2.6 kernels from
> swsusp.sourceforge.net. It includes support for SMP, 4GB Highmem and
> preemption. It also has a extensible architecture that allows for
> arbitrary transformations on the image (compression, encryption) and
> arbitrary backends for writing the image (eg to swap or an NFS
> share[Work In Progress]). Questions regarding suspend2 should be sent to
> the mailing list available through the Suspend2 website, and not to the
> Linux Kernel Mailing List. We are working toward merging Suspend2 into
> the mainline kernel.
You are using swsusp2, suspend2 and Suspend2. I figured out you mean
suspend2 and applied this: (it will eventually propagate).
Pavel
Q: What is 'suspend2'?
A: suspend2 is 'Software Suspend 2', forked implementation of
suspend-to-disk which is available as separate patches for 2.4 and 2.6
kernels from swsusp.sourceforge.net. It includes support for SMP, 4GB
highmem and preemption. It also has a extensible architecture that
allows for arbitrary transformations on the image (compression,
encryption) and arbitrary backends for writing the image (eg to swap
or an NFS share[Work In Progress]). Questions regarding suspend2
should be sent to the mailing list available through the suspend2
website, and not to the Linux Kernel Mailing List. We are working
toward merging suspend2 into the mainline kernel.
--
When do you have heart between your knees?
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: swsusp documentation updates
2004-05-11 2:51 ` Pavel Machek
@ 2004-05-11 22:45 ` Nigel Cunningham
0 siblings, 0 replies; 10+ messages in thread
From: Nigel Cunningham @ 2004-05-11 22:45 UTC (permalink / raw)
To: Pavel Machek
Cc: Andrew Morton, Rusty trivial patch monkey Russell,
Linux Kernel Mailing List
Hi.
On Tue, 11 May 2004 12:51, Pavel Machek wrote:
> You are using swsusp2, suspend2 and Suspend2. I figured out you mean
> suspend2 and applied this: (it will eventually propagate).
> Pavel
Sorry. Yes, I did mean suspend2. Thanks!
Nigel
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2004-05-11 22:46 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-05-05 21:43 swsusp documentation updates Karol Kozimor
-- strict thread matches above, loose matches on Subject: below --
2004-05-05 9:47 Pavel Machek
2004-05-05 9:55 ` Nigel Cunningham
2004-05-05 10:11 ` Pavel Machek
2004-05-05 21:03 ` Nigel Cunningham
2004-05-05 23:10 ` Nigel Cunningham
2004-05-11 2:51 ` Pavel Machek
2004-05-11 22:45 ` Nigel Cunningham
2004-05-05 11:00 ` Romano Giannetti
2004-05-05 11:09 ` Pavel Machek
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox