From: Pavel Machek <pavel@ucw.cz>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>,
LKML <linux-kernel@vger.kernel.org>,
pm list <linux-pm@lists.linux-foundation.org>
Subject: Re: [RFC][PATCH -mm 3/3] PM: Disable _request_firmware before hibernation/suspend
Date: Mon, 28 May 2007 20:57:27 +0000 [thread overview]
Message-ID: <20070528205727.GA5911@ucw.cz> (raw)
In-Reply-To: <Pine.LNX.4.44L0.0705281237200.22682-100000@netrider.rowland.org>
Hi!
> > > I can't speak for the second example, but there's a good reason the
> > > first example works this way. It's not a matter of races; the problem
> > > is that the kernel thread's job is to selectively suspend and resume
> > > devices. We don't want it doing this while a system sleep is in
> > > progress; it would (and in fact has, before the thread was made
> > > freezable) cause the sleep transition to abort.
> >
> > How does this work on PPC or APM systems?
>
> For hibernation it behaves the same as on other types of systems.
>
> For STR it generally works okay. There was one report of suspends
> aborting, and it looked like this was caused by selective resumes
> originating from userspace. This seemed to be unrelated to the kernel
> threads; apparently some program was running while the STR was in
> progress, and causing the problem. For example, the lsusb program will
> do a selective resume on every USB device as it scans through them all.
> However that's just a guess, we haven't fully resolved that bug report.
>
> The theoretical answer is that it behaves the way we want. The kernel
> thread does selective resumes in response to device requests. If such
> a request comes in while the system is asleep it will awaken the
> system; so it's only logical that a request coming in while the system
> is in the process of going to sleep should abort the suspend.
I'd say that it shows ppc being broken. User wanted to suspend the
system, and now unrelated task did lsusb... and system will not sleep.
AFAICT it is DoS issue -- if one of your users keeps doing lsusb, root
will not be able to suspend the system.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
next prev parent reply other threads:[~2007-05-28 20:57 UTC|newest]
Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200705272229.21263.rjw@sisk.pl>
2007-05-27 20:30 ` [RFC][PATCH -mm 1/3] PM: Hibernation and suspend notifiers Rafael J. Wysocki
2007-05-27 20:30 ` [RFC][PATCH -mm 2/3] PM: Disable usermode helper before hibernation/suspend Rafael J. Wysocki
2007-05-27 20:31 ` [RFC][PATCH -mm 3/3] PM: Disable _request_firmware " Rafael J. Wysocki
[not found] ` <200705272230.56863.rjw@sisk.pl>
2007-05-28 13:04 ` [RFC][PATCH -mm 2/3] PM: Disable usermode helper " Pavel Machek
[not found] ` <200705272230.04478.rjw@sisk.pl>
2007-05-28 9:49 ` [RFC][PATCH -mm 1/3] PM: Hibernation and suspend notifiers Nigel Cunningham
2007-05-28 13:12 ` Pavel Machek
2007-05-28 17:26 ` Rafael J. Wysocki
2007-05-28 15:56 ` Alan Stern
2007-05-28 17:29 ` Rafael J. Wysocki
2007-05-29 22:24 ` Rafael J. Wysocki
[not found] ` <200705300024.32455.rjw@sisk.pl>
2007-05-30 15:37 ` Pavel Machek
[not found] ` <20070530153740.GA4772@ucw.cz>
2007-05-30 20:44 ` Rafael J. Wysocki
[not found] ` <200705302244.25927.rjw@sisk.pl>
2007-05-30 21:11 ` Rafael J. Wysocki
[not found] ` <200705302311.40123.rjw@sisk.pl>
2007-05-30 22:24 ` Nigel Cunningham
2007-05-31 5:44 ` Rafael J. Wysocki
[not found] ` <200705310744.44488.rjw@sisk.pl>
2007-05-31 14:23 ` Pavel Machek
[not found] ` <20070531142357.GK27309@elf.ucw.cz>
2007-05-31 20:02 ` Rafael J. Wysocki
2007-05-31 21:56 ` Nigel Cunningham
2007-05-30 22:29 ` Pavel Machek
[not found] ` <20070530222956.GD27309@elf.ucw.cz>
2007-05-31 5:42 ` Rafael J. Wysocki
[not found] ` <200705272231.54535.rjw@sisk.pl>
2007-05-27 20:45 ` [RFC][PATCH -mm 3/3] PM: Disable _request_firmware before hibernation/suspend Michael-Luke Jones
2007-05-27 20:49 ` Matthew Garrett
[not found] ` <20070527204955.GA22202@srcf.ucam.org>
2007-05-27 21:45 ` Rafael J. Wysocki
2007-05-27 21:49 ` Kay Sievers
[not found] ` <200705272345.04518.rjw@sisk.pl>
2007-05-27 22:01 ` Matthew Garrett
[not found] ` <20070527220158.GB22687@srcf.ucam.org>
2007-05-28 7:44 ` Rafael J. Wysocki
2007-05-28 16:09 ` Alan Stern
2007-05-28 16:12 ` Matthew Garrett
2007-05-28 16:43 ` Alan Stern
2007-05-28 16:54 ` Matthew Garrett
2007-05-28 20:03 ` Alan Stern
2007-05-28 20:57 ` Pavel Machek [this message]
2007-05-28 22:29 ` Alan Stern
[not found] ` <Pine.LNX.4.44L0.0705281719200.10323-100000@netrider.rowland.org>
2007-05-29 20:09 ` David Brownell
2007-06-04 11:00 ` Pavel Machek
2007-05-28 8:30 ` Nigel Cunningham
2007-05-28 11:22 ` Rafael J. Wysocki
[not found] ` <3ae72650705271449q37f523c3t5980541122ab871@mail.gmail.com>
2007-05-27 22:01 ` Rafael J. Wysocki
2007-05-27 22:04 ` Matthew Garrett
[not found] ` <20070527220412.GC22687@srcf.ucam.org>
2007-05-27 22:16 ` Kay Sievers
[not found] ` <1180304166.3131.66.camel@lov.localdomain>
2007-05-28 7:43 ` Rafael J. Wysocki
2007-05-28 8:48 ` Michael-Luke Jones
2007-05-28 9:06 ` Kay Sievers
2007-05-28 10:26 ` Michael-Luke Jones
2007-05-28 12:01 ` Kay Sievers
2007-05-28 12:07 ` Michael-Luke Jones
2007-05-28 10:41 ` Michael-Luke Jones
2007-05-29 21:19 ` Rob Landley
2007-05-29 22:51 ` Rob Landley
2007-05-30 19:50 ` Pavel Machek
2007-05-28 11:15 ` Pavel Machek
2007-05-28 11:24 ` Kay Sievers
2007-05-28 11:28 ` Pavel Machek
2007-05-28 11:38 ` Michael-Luke Jones
2007-05-28 11:45 ` Pavel Machek
2007-05-28 11:51 ` Kay Sievers
2007-05-28 12:26 ` Michael-Luke Jones
2007-05-28 12:47 ` Kay Sievers
2007-05-28 13:00 ` Pavel Machek
2007-05-28 13:10 ` Michael-Luke Jones
2007-05-28 11:28 ` Rafael J. Wysocki
[not found] ` <6BD5252F-96CD-49D9-86C7-18115294D913@cam.ac.uk>
2007-05-27 21:55 ` Rafael J. Wysocki
2007-05-28 13:01 ` Pavel Machek
2007-05-29 20:41 ` Rob Landley
2007-05-28 13:07 ` Pavel Machek
2007-05-28 15:55 ` Alan Stern
2007-05-28 17:43 ` Rafael J. Wysocki
2007-05-28 20:51 ` Ray Lee
2007-05-28 20:59 ` Pavel Machek
2007-06-02 0:41 ` [RFC][PATCH -mm 0/2] PM: Hibernation and suspend notifiers (rev. 2) Rafael J. Wysocki
[not found] ` <200706020241.53788.rjw@sisk.pl>
2007-06-02 0:43 ` [RFC][PATCH -mm 1/2] PM: Introduce hibernation and suspend notifiers Rafael J. Wysocki
2007-06-02 0:44 ` [RFC][PATCH -mm 2/2] PM: Disable usermode helper before hibernation and suspend Rafael J. Wysocki
[not found] ` <200706020243.20117.rjw@sisk.pl>
2007-06-03 16:41 ` [RFC][PATCH -mm 1/2] PM: Introduce hibernation and suspend notifiers Pavel Machek
[not found] ` <20070603164143.GB4093@ucw.cz>
2007-06-03 22:38 ` Rafael J. Wysocki
[not found] ` <200706040038.54161.rjw@sisk.pl>
2007-06-03 22:59 ` Pavel Machek
[not found] ` <20070603225903.GC2971@elf.ucw.cz>
2007-06-04 7:56 ` Rafael J. Wysocki
[not found] ` <200706020244.50180.rjw@sisk.pl>
2007-06-03 16:42 ` [RFC][PATCH -mm 2/2] PM: Disable usermode helper before hibernation and suspend Pavel Machek
[not found] <20070604110052.GI4363@elf.ucw.cz>
2007-06-05 18:45 ` [RFC][PATCH -mm 3/3] PM: Disable _request_firmware before hibernation/suspend Alan Stern
[not found] ` <Pine.LNX.4.44L0.0706051420351.2606-100000@iolanthe.rowland.org>
2007-06-05 20:26 ` Pavel Machek
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20070528205727.GA5911@ucw.cz \
--to=pavel@ucw.cz \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@lists.linux-foundation.org \
--cc=mjg59@srcf.ucam.org \
--cc=stern@rowland.harvard.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox