[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070703194247.GB27098@srcf.ucam.org>
Date: Tue, 3 Jul 2007 20:42:47 +0100
From: Matthew Garrett <mjg59@...f.ucam.org>
To: Alan Stern <stern@...land.harvard.edu>
Cc: linux-kernel@...r.kernel.org, linux-pm@...ts.linux-foundation.org
Subject: Re: [linux-pm] [PATCH] Remove process freezer from suspend to RAM pathway
On Tue, Jul 03, 2007 at 03:33:40PM -0400, Alan Stern wrote:
> On Tue, 3 Jul 2007, Matthew Garrett wrote:
>
> > On Tue, Jul 03, 2007 at 12:57:17PM -0400, Alan Stern wrote:
> > > On Tue, 3 Jul 2007, Matthew Garrett wrote:
> > > > For the suspend to RAM case, that sounds absolutely fine.
> > >
> > > It's not so good when your suspend process has to wait for the call to
> > > complete!
> >
> > Why would it have to? Sorry, I suspect I'm missing something obvious
> > here.
>
> Well, the sys_sync() that caused your original problem did exactly
> that. It's the reason you get deadlocks, right?
The sys_sync is unnecessary in the first case. There shouldn't be
anything in the suspend path that's going to require userspace access to
a device after that device has been suspended.
> I agree that in general the suspend process should not have to wait for
> a userspace callback to complete. Indeed, there's no particular
> reason that anything running during STR should have to wait for
> something in userspace to complete. Given that fact, I don't see
> anything wrong with freezing userspace when doing STR.
There's nothing wrong with it as such, it's just that our implementation
appears to suck in a myriad of small ways that keep cropping up and
biting people. Even without the sys_sync(), freezing processes results
in the suspend failing because syslog is stuck in D state and won't go
into the refrigerator.
--
Matthew Garrett | mjg59@...f.ucam.org
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists