From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Rafael J. Wysocki" Subject: Re: [PATCH] Remove process freezer from suspend to RAM pathway Date: Wed, 4 Jul 2007 16:41:58 +0200 Message-ID: <200707041641.58883.rjw@sisk.pl> References: <20070703211227.GA28758@srcf.ucam.org> <200707041325.55779.rjw@sisk.pl> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-15" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Content-Disposition: inline List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: linux-pm-bounces@lists.linux-foundation.org Errors-To: linux-pm-bounces@lists.linux-foundation.org To: Miklos Szeredi Cc: mjg59@srcf.ucam.org, linux-pm@lists.linux-foundation.org, linux-kernel@vger.kernel.org List-Id: linux-pm@vger.kernel.org On Wednesday, 4 July 2007 13:51, Miklos Szeredi wrote: > > Still, my position is this: > > > > 1) The freezer (in the modified form, with the freezing of kernel threads > > limited to the ones that want to be frozen) is needed for hibernation. > > > > 2) The freezer is generally not needed for suspend, _but_ there are drivers > > in the tree that rely on it being used. Thus, at some point in time we can > > remove the freezer from the suspend code path, _but_ no sooner than we are > > sure that the majority of drivers is prepared for that. > > And we won't know if drivers are OK until we remove the freezer, > catch-22. I disagree. We can learn that by auditing the drivers. > So I think we need to disable the freezer at least in -mm and/or > optionally in -linus. > > I applied Matthew's patch, and suspend did in fact stop working > (thinkpad t60), but there was nothing catastrophic. Here's the dmesg > if somebody is interested: > > Suspending console(s) > usb_endpoint usbdev5.3_ep83: PM: suspend 0->2, parent 5-2:1.0 already 2 > usb_endpoint usbdev5.3_ep02: PM: suspend 0->2, parent 5-2:1.0 already 2 > usb_endpoint usbdev5.3_ep81: PM: suspend 0->2, parent 5-2:1.0 already 2 > hub 2-0:1.0: suspend error -16 > suspend_device(): usb_suspend+0x0/0x1c() returns -16 > Could not suspend device usb2: error -16 > usb_endpoint usbdev5.3_ep81: PM: resume from 0, parent 5-2:1.0 still 2 > usb_endpoint usbdev5.3_ep02: PM: resume from 0, parent 5-2:1.0 still 2 > usb_endpoint usbdev5.3_ep83: PM: resume from 0, parent 5-2:1.0 still 2 > Some devices failed to suspend No, it's not catastrophic, but something like this will result in a bug report with "regression" in the subject. Greetings, Rafael -- "Premature optimization is the root of all evil." - Donald Knuth