Commit b9827e4b authored by David Brownell's avatar David Brownell Committed by Greg Kroah-Hartman

[PATCH] USB: correct the USB info in Documentation/power/swsusp.txt

The swsusp.txt documentation harshes confusingly on USB, and this patch
addresses the issue.  It's harsh because it blames USB for some issues
that are generic to all drivers -- especially those supporting removable
media -- and it's confusing since it says that USB has the issue with
"suspend" not just swsusp ... while in reality, USB doesn't have the
issue when real system suspend states are used.
Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
Acked-by: default avatarPavel Machek <pavel@ucw.cz>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
parent b761d9d8
...@@ -18,10 +18,11 @@ Some warnings, first. ...@@ -18,10 +18,11 @@ Some warnings, first.
* *
* (*) suspend/resume support is needed to make it safe. * (*) suspend/resume support is needed to make it safe.
* *
* If you have any filesystems on USB devices mounted before suspend, * If you have any filesystems on USB devices mounted before software suspend,
* they won't be accessible after resume and you may lose data, as though * they won't be accessible after resume and you may lose data, as though
* you have unplugged the USB devices with mounted filesystems on them * you have unplugged the USB devices with mounted filesystems on them;
* (see the FAQ below for details). * see the FAQ below for details. (This is not true for more traditional
* power states like "standby", which normally don't turn USB off.)
You need to append resume=/dev/your_swap_partition to kernel command You need to append resume=/dev/your_swap_partition to kernel command
line. Then you suspend by line. Then you suspend by
...@@ -204,7 +205,7 @@ Q: There don't seem to be any generally useful behavioral ...@@ -204,7 +205,7 @@ Q: There don't seem to be any generally useful behavioral
distinctions between SUSPEND and FREEZE. distinctions between SUSPEND and FREEZE.
A: Doing SUSPEND when you are asked to do FREEZE is always correct, A: Doing SUSPEND when you are asked to do FREEZE is always correct,
but it may be unneccessarily slow. If you want USB to stay simple, but it may be unneccessarily slow. If you want your driver to stay simple,
slowness may not matter to you. It can always be fixed later. slowness may not matter to you. It can always be fixed later.
For devices like disk it does matter, you do not want to spindown for For devices like disk it does matter, you do not want to spindown for
...@@ -357,17 +358,25 @@ Q: Is this true that if I have a mounted filesystem on a USB device and ...@@ -357,17 +358,25 @@ Q: Is this true that if I have a mounted filesystem on a USB device and
I suspend to disk, I can lose data unless the filesystem has been mounted I suspend to disk, I can lose data unless the filesystem has been mounted
with "sync"? with "sync"?
A: That's right. It depends on your hardware, and it could be true even for A: That's right ... if you disconnect that device, you may lose data.
suspend-to-RAM. In fact, even with "-o sync" you can lose data if your In fact, even with "-o sync" you can lose data if your programs have
programs have information in buffers they haven't written out to disk. information in buffers they haven't written out to a disk you disconnect,
or if you disconnect before the device finished saving data you wrote.
If you're lucky, your hardware will support low-power modes for USB Software suspend normally powers down USB controllers, which is equivalent
controllers while the system is asleep. Lots of hardware doesn't, to disconnecting all USB devices attached to your system.
however. Shutting off the power to a USB controller is equivalent to
unplugging all the attached devices. Your system might well support low-power modes for its USB controllers
while the system is asleep, maintaining the connection, using true sleep
modes like "suspend-to-RAM" or "standby". (Don't write "disk" to the
/sys/power/state file; write "standby" or "mem".) We've not seen any
hardware that can use these modes through software suspend, although in
theory some systems might support "platform" or "firmware" modes that
won't break the USB connections.
Remember that it's always a bad idea to unplug a disk drive containing a Remember that it's always a bad idea to unplug a disk drive containing a
mounted filesystem. With USB that's true even when your system is asleep! mounted filesystem. That's true even when your system is asleep! The
The safest thing is to unmount all USB-based filesystems before suspending safest thing is to unmount all filesystems on removable media (such USB,
and remount them after resuming. Firewire, CompactFlash, MMC, external SATA, or even IDE hotplug bays)
before suspending; then remount them after resuming.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment