All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matthew Garrett <mjg59@srcf.ucam.org>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: LKML <linux-kernel@vger.kernel.org>, Pavel Machek <pavel@ucw.cz>,
	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 17:54:41 +0100	[thread overview]
Message-ID: <20070528165441.GA1669@srcf.ucam.org> (raw)
In-Reply-To: <Pine.LNX.4.44L0.0705281237200.22682-100000@netrider.rowland.org>

On Mon, May 28, 2007 at 12:43:36PM -0400, Alan Stern wrote:
> On Mon, 28 May 2007, Matthew Garrett wrote:
> > On Mon, May 28, 2007 at 12:09:30PM -0400, Alan Stern wrote:
> > 
> > > 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.

Ok, I guess I'm still not clear on this :) If it doesn't cause major 
problems on Powermac or APM systems, why is freezing the thread 
beneficial on ACPI systems?

-- 
Matthew Garrett | mjg59@srcf.ucam.org

WARNING: multiple messages have this Message-ID (diff)
From: Matthew Garrett <mjg59@srcf.ucam.org>
To: Alan Stern <stern@rowland.harvard.edu>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>,
	pm list <linux-pm@lists.linux-foundation.org>,
	LKML <linux-kernel@vger.kernel.org>,
	Nigel Cunningham <nigel@nigel.suspend2.net>,
	Pavel Machek <pavel@ucw.cz>, Oliver Neukum <oliver@neukum.org>
Subject: Re: [RFC][PATCH -mm 3/3] PM: Disable _request_firmware before hibernation/suspend
Date: Mon, 28 May 2007 17:54:41 +0100	[thread overview]
Message-ID: <20070528165441.GA1669@srcf.ucam.org> (raw)
In-Reply-To: <Pine.LNX.4.44L0.0705281237200.22682-100000@netrider.rowland.org>

On Mon, May 28, 2007 at 12:43:36PM -0400, Alan Stern wrote:
> On Mon, 28 May 2007, Matthew Garrett wrote:
> > On Mon, May 28, 2007 at 12:09:30PM -0400, Alan Stern wrote:
> > 
> > > 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.

Ok, I guess I'm still not clear on this :) If it doesn't cause major 
problems on Powermac or APM systems, why is freezing the thread 
beneficial on ACPI systems?

-- 
Matthew Garrett | mjg59@srcf.ucam.org

  reply	other threads:[~2007-05-28 16:54 UTC|newest]

Thread overview: 161+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-27 20:29 [RFC][PATCH -mm 0/3] PM: Hibernation and suspend notifiers Rafael J. Wysocki
2007-05-27 20:30 ` [RFC][PATCH -mm 1/3] " Rafael J. Wysocki
2007-05-27 20:30 ` Rafael J. Wysocki
2007-05-28  9:49   ` Nigel Cunningham
2007-05-28  9:49     ` Nigel Cunningham
2007-05-28 13:12   ` Pavel Machek
2007-05-28 13:12     ` Pavel Machek
2007-05-28 17:26     ` Rafael J. Wysocki
2007-05-28 17:26       ` Rafael J. Wysocki
2007-05-28 15:56   ` Alan Stern
2007-05-28 15:56     ` Alan Stern
2007-05-28 17:29     ` Rafael J. Wysocki
2007-05-28 17:29       ` Rafael J. Wysocki
2007-05-29 22:24     ` Rafael J. Wysocki
2007-05-29 22:24     ` Rafael J. Wysocki
2007-05-30 15:37       ` Pavel Machek
2007-05-30 20:44         ` Rafael J. Wysocki
2007-05-30 20:44         ` Rafael J. Wysocki
2007-05-30 21:11           ` Rafael J. Wysocki
2007-05-30 22:24             ` Nigel Cunningham
2007-05-30 22:24               ` Nigel Cunningham
2007-05-31  5:44               ` Rafael J. Wysocki
2007-05-31 14:23                 ` Pavel Machek
2007-05-31 14:23                 ` Pavel Machek
2007-05-31 20:02                   ` Rafael J. Wysocki
2007-05-31 20:02                     ` Rafael J. Wysocki
2007-05-31 21:56                     ` Nigel Cunningham
2007-05-31 21:56                     ` Nigel Cunningham
2007-05-31  5:44               ` Rafael J. Wysocki
2007-05-30 22:29             ` Pavel Machek
2007-05-31  5:42               ` Rafael J. Wysocki
2007-05-31  5:42               ` Rafael J. Wysocki
2007-05-30 22:29             ` Pavel Machek
2007-05-30 21:11           ` Rafael J. Wysocki
2007-05-30 15:37       ` Pavel Machek
2007-05-27 20:30 ` [RFC][PATCH -mm 2/3] PM: Disable usermode helper before hibernation/suspend Rafael J. Wysocki
2007-05-28 13:04   ` Pavel Machek
2007-05-28 13:04     ` Pavel Machek
2007-05-27 20:30 ` Rafael J. Wysocki
2007-05-27 20:31 ` [RFC][PATCH -mm 3/3] PM: Disable _request_firmware " Rafael J. Wysocki
2007-05-27 20:45   ` Michael-Luke Jones
2007-05-27 20:45   ` Michael-Luke Jones
2007-05-27 21:55     ` Rafael J. Wysocki
2007-05-27 21:55       ` Rafael J. Wysocki
2007-05-28 13:01     ` Pavel Machek
2007-05-28 13:01       ` Pavel Machek
2007-05-29 20:41     ` Rob Landley
2007-05-29 20:41       ` Rob Landley
2007-05-27 20:49   ` Matthew Garrett
2007-05-27 21:45     ` Rafael J. Wysocki
2007-05-27 22:01       ` Matthew Garrett
2007-05-28  7:44         ` Rafael J. Wysocki
2007-05-28  7:44         ` Rafael J. Wysocki
2007-05-28 16:09         ` Alan Stern
2007-05-28 16:09           ` Alan Stern
2007-05-28 16:12           ` Matthew Garrett
2007-05-28 16:12             ` Matthew Garrett
2007-05-28 16:43             ` Alan Stern
2007-05-28 16:43               ` Alan Stern
2007-05-28 16:54               ` Matthew Garrett [this message]
2007-05-28 16:54                 ` Matthew Garrett
2007-05-28 20:03                 ` Alan Stern
2007-05-28 20:03                   ` Alan Stern
2007-05-28 20:57               ` Pavel Machek
2007-05-28 20:57                 ` Pavel Machek
2007-05-28 22:29                 ` Alan Stern
2007-05-28 22:29                 ` Alan Stern
2007-05-29 20:09                   ` [linux-pm] " David Brownell
2007-05-29 20:48                     ` Alan Stern
2007-05-29 20:48                     ` [linux-pm] " Alan Stern
2007-05-29 20:09                   ` David Brownell
2007-06-04 11:00                   ` Pavel Machek
2007-06-05 18:45                     ` Alan Stern
2007-06-05 18:45                     ` Alan Stern
2007-06-05 20:26                       ` Pavel Machek
2007-06-05 20:26                       ` Pavel Machek
2007-06-04 11:00                   ` Pavel Machek
2007-05-27 22:01       ` Matthew Garrett
2007-05-28  8:30       ` Nigel Cunningham
2007-05-28  8:30         ` Nigel Cunningham
2007-05-28 11:22         ` Rafael J. Wysocki
2007-05-28 11:22           ` Rafael J. Wysocki
2007-05-27 21:45     ` Rafael J. Wysocki
2007-05-27 21:49     ` Kay Sievers
2007-05-27 21:49     ` Kay Sievers
2007-05-27 22:01       ` Rafael J. Wysocki
2007-05-27 22:01       ` Rafael J. Wysocki
2007-05-27 22:04       ` Matthew Garrett
2007-05-27 22:04       ` Matthew Garrett
2007-05-27 22:16         ` Kay Sievers
2007-05-28  7:43           ` Rafael J. Wysocki
2007-05-28  7:43             ` Rafael J. Wysocki
2007-05-28  8:48             ` Michael-Luke Jones
2007-05-28  8:48               ` Michael-Luke Jones
2007-05-28  9:06               ` Kay Sievers
2007-05-28  9:06                 ` Kay Sievers
2007-05-28 10:26                 ` Michael-Luke Jones
2007-05-28 10:26                   ` Michael-Luke Jones
2007-05-28 12:01                   ` Kay Sievers
2007-05-28 12:01                     ` Kay Sievers
2007-05-28 12:07                     ` Michael-Luke Jones
2007-05-28 12:07                       ` Michael-Luke Jones
2007-05-28 10:41                 ` Michael-Luke Jones
2007-05-28 10:41                   ` Michael-Luke Jones
2007-05-29 21:19                 ` Rob Landley
2007-05-29 21:19                 ` Rob Landley
2007-05-29 22:51               ` Rob Landley
2007-05-29 22:51                 ` Rob Landley
2007-05-30 19:50                 ` Pavel Machek
2007-05-30 19:50                 ` Pavel Machek
2007-05-28 11:15             ` Pavel Machek
2007-05-28 11:15               ` Pavel Machek
2007-05-28 11:24               ` Kay Sievers
2007-05-28 11:24                 ` Kay Sievers
2007-05-28 11:28                 ` Pavel Machek
2007-05-28 11:28                   ` Pavel Machek
2007-05-28 11:38                 ` Michael-Luke Jones
2007-05-28 11:38                   ` Michael-Luke Jones
2007-05-28 11:45                   ` [linux-pm] " Pavel Machek
2007-05-28 11:45                   ` Pavel Machek
2007-05-28 11:51                   ` Kay Sievers
2007-05-28 11:51                     ` Kay Sievers
2007-05-28 12:26                     ` Michael-Luke Jones
2007-05-28 12:26                       ` Michael-Luke Jones
2007-05-28 12:47                       ` Kay Sievers
2007-05-28 12:47                         ` Kay Sievers
2007-05-28 13:00                       ` Pavel Machek
2007-05-28 13:00                         ` Pavel Machek
2007-05-28 13:10                         ` Michael-Luke Jones
2007-05-28 13:10                           ` Michael-Luke Jones
2007-05-28 11:28               ` Rafael J. Wysocki
2007-05-28 11:28                 ` Rafael J. Wysocki
2007-05-27 22:16         ` Kay Sievers
2007-05-27 20:49   ` Matthew Garrett
2007-05-28 13:07   ` Pavel Machek
2007-05-28 13:07     ` Pavel Machek
2007-05-28 15:55   ` Alan Stern
2007-05-28 15:55     ` Alan Stern
2007-05-28 17:43     ` Rafael J. Wysocki
2007-05-28 17:43       ` Rafael J. Wysocki
2007-05-28 20:51       ` Ray Lee
2007-05-28 20:51         ` Ray Lee
2007-05-28 20:59         ` Pavel Machek
2007-05-28 20:59           ` Pavel Machek
2007-05-27 20:31 ` Rafael J. Wysocki
2007-06-02  0:41 ` [RFC][PATCH -mm 0/2] PM: Hibernation and suspend notifiers (rev. 2) Rafael J. Wysocki
2007-06-02  0:41 ` Rafael J. Wysocki
2007-06-02  0:43   ` [RFC][PATCH -mm 1/2] PM: Introduce hibernation and suspend notifiers Rafael J. Wysocki
2007-06-03 16:41     ` Pavel Machek
2007-06-03 16:41     ` Pavel Machek
2007-06-03 22:38       ` Rafael J. Wysocki
2007-06-03 22:59         ` Pavel Machek
2007-06-04  7:56           ` Rafael J. Wysocki
2007-06-04  7:56           ` Rafael J. Wysocki
2007-06-03 22:59         ` Pavel Machek
2007-06-03 22:38       ` Rafael J. Wysocki
2007-06-02  0:43   ` Rafael J. Wysocki
2007-06-02  0:44   ` [RFC][PATCH -mm 2/2] PM: Disable usermode helper before hibernation and suspend Rafael J. Wysocki
2007-06-02  0:44   ` Rafael J. Wysocki
2007-06-03 16:42     ` Pavel Machek
2007-06-03 16:42     ` 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=20070528165441.GA1669@srcf.ucam.org \
    --to=mjg59@srcf.ucam.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@lists.linux-foundation.org \
    --cc=pavel@ucw.cz \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.