[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201111282122.53635.rjw@sisk.pl>
Date: Mon, 28 Nov 2011 21:22:53 +0100
From: "Rafael J. Wysocki" <rjw@...k.pl>
To: Jeff Layton <jlayton@...hat.com>
Cc: linux-kernel@...r.kernel.org, linux-nfs@...r.kernel.org,
linux-pm@...r.kernel.org, tj@...nel.org, john@...va.com,
trond.myklebust@...app.com, marek.belisko@...il.com,
awilliam@...hat.com
Subject: Re: [PATCH v3 0/2] nfs/sunrpc: allow freezing of tasks with NFS calls in flight
On Monday, November 28, 2011, Jeff Layton wrote:
> This patchset is a second (third?) attempt at fixing the issues with
> suspending a machine that has an active NFS mount.
>
> The bug reported against Fedora is here:
>
> https://bugzilla.redhat.com/show_bug.cgi?id=717735
>
> The main difference between v2 and this one is that this one has the new
> macros attempt to freeze before going to sleep. It's possible for the
> freezer_do_not_count() call to race with the freezer. The FREEZER_SKIP
> flag can be set after the freezer has already attempted to freeze the
> task. If so, it may just go to sleep without attempting to freeze.
>
> This set attempts to remedy this by calling try_to_freeze() after
> calling freezer_do_not_count() and before sleeping. This should prevent
> the above race.
>
> I've also fleshed out the comments a bit to nail down the semantics for
> these new functions. I'm quite open to changing the names of the
> functions as well, if anyone can suggest better alternatives.
>
> Comments and more tested would be appreciated. My goal is to get this
> in for 3.3, hopefully via Rafael's tree.
If no one objects, I'll take these patches to linux-pm/linux-next in the
next couple of days (and then to the pm-freezer branch, if there are no
visible problems with them).
Thanks,
Rafael
> Jeff Layton (2):
> sunrpc: make rpc_wait_bit_killable handle freeze events
> nfs: make TASK_KILLABLE sleeps attempt to freeze
>
> fs/nfs/inode.c | 3 ++-
> fs/nfs/nfs3proc.c | 3 ++-
> fs/nfs/nfs4proc.c | 5 +++--
> fs/nfs/proc.c | 3 ++-
> include/linux/freezer.h | 40 ++++++++++++++++++++++++++++++++++++++++
> net/sunrpc/sched.c | 3 ++-
> 6 files changed, 51 insertions(+), 6 deletions(-)
>
>
--
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