[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140916201929.2e355cae@tlielax.poochiereds.net>
Date: Tue, 16 Sep 2014 20:19:29 -0400
From: Jeff Layton <jeff.layton@...marydata.com>
To: NeilBrown <neilb@...e.de>
Cc: Jeff Layton <jeff.layton@...marydata.com>,
Peter Zijlstra <peterz@...radead.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Trond Myklebust <trond.myklebust@...marydata.com>,
Ingo Molnar <mingo@...hat.com>, linux-fsdevel@...r.kernel.org,
linux-mm@...ck.org, linux-nfs@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH 0/4] Remove possible deadlocks in nfs_release_page()
On Wed, 17 Sep 2014 09:41:13 +1000
NeilBrown <neilb@...e.de> wrote:
> On Tue, 16 Sep 2014 07:47:41 -0400 Jeff Layton <jeff.layton@...marydata.com>
> wrote:
>
>
> > Also, we call things like invalidate_complete_page2 from the cache
> > invalidation code. Will we end up with potential problems now that we
> > have a stronger possibility that a page might not be freeable when it
> > calls releasepage? (no idea on this -- I'm just spitballing)
> >
>
> Answering just this part here:
> invalidate_complete_page2() is only called immediately after a call to
> do_launder_page().
> For nfs, that means nfs_launder_page() was called, which calls nfs_wb_page()
> which in turn calls
> ret = nfs_commit_inode(inode, FLUSH_SYNC);
>
> so the inode is fully committed when invalidate_complete_page2 is called, so
> nfs_release_page will succeed.
>
> So there shouldn't be a problem there.
>
Yep, Trond pointed that out today when we were discussing it. Thanks
for confirming it here though...
--
Jeff Layton <jlayton@...marydata.com>
Download attachment "signature.asc" of type "application/pgp-signature" (820 bytes)
Powered by blists - more mailing lists