lkml.org 
[lkml]   [2011]   [Oct]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 0/4] allow freezing of tasks with netfs calls in flight
On Tue, 11 Oct 2011 08:18:19 +0200
Pavel Machek <pavel@ucw.cz> wrote:

> Hi!
>
> > We've had a number of reports recently of people with NFS and CIFS
> > mounts that were unable to suspend or hibernate their machines. Here
> > are a couple of Fedora bugs that illustrate the problem:
> >
> > https://bugzilla.redhat.com/show_bug.cgi?id=712088
> > https://bugzilla.redhat.com/show_bug.cgi?id=717735
> >
> > When it occurs the problem is pretty clear. We have a task that's
> > sleeping in the kernel in TASK_KILLABLE sleep, generally waiting
> > for a reply to come in. Often though, userspace has already taken
> > down the interface so that reply will never come. The process then
> > fails to freeze and the suspend fails.
>
> Userspace should not take interface down for suspend (*). Why do that?
>

I suspect that NetworkManager does this to try and allow for the case
where someone suspends their laptop and then wanders off to another
network and then resumes. Either way, we still want to allow suspend
and hibernate to work regardless of what userspace does during the
process.

> > This patch fixes this by allowing the TASK_KILLABLE sleeps in NFS and
> > CIFS to be awoken by the freezer and then to try to freeze. If a freeze
> > event does occur, then the code will treat it as if a schedule() has
> > already occured.
>
> Looks like good idea...
>
> (*) unless absolutely neccessary. openvpn?
>

Thanks for looking.
--
Jeff Layton <jlayton@redhat.com>


\
 
 \ /
  Last update: 2011-10-11 12:09    [from the cache]
©2003-2011 Jasper Spaans