Re: [linux-pm] [PATCH] Remove process freezer from suspend to RAM pathway

From: Matthew Garrett
Date: Tue Jul 03 2007 - 15:43:16 EST


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@xxxxxxxxxxxxx
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/