From: Jeff Layton <jeff.layton@primarydata.com>
To: Christoph Hellwig <hch@infradead.org>
Cc: bfields@fieldses.org, linux-nfs@vger.kernel.org
Subject: Re: [PATCH 2/7] nfsd: Ensure stateids remain unique until they are freed
Date: Wed, 16 Jul 2014 10:28:24 -0400 [thread overview]
Message-ID: <20140716102824.27eeb209@tlielax.poochiereds.net> (raw)
In-Reply-To: <20140716134945.GA11961@infradead.org>
On Wed, 16 Jul 2014 06:49:45 -0700
Christoph Hellwig <hch@infradead.org> wrote:
> On Wed, Jul 16, 2014 at 08:17:38AM -0400, Jeff Layton wrote:
> > The problem with keeping them in the caller is that it defeats the main
> > purpose of the patch. The idea here is to make sure that we keep the
> > stateids in the IDR tree for as long as possible to help ensure
> > uniqueness. If we keep it in the caller, we're still removing the stateids
> > from the IDR hash earlier than we should, and that's a larger potential
> > for collisions.
>
> I don't understand how that has anything to do with doing the call
> in either nfs4_free_stid or it's two caller. For the open and lock
> stateids nothing changes in either case, and for delegations we
> move from destroy_(revoked_)delegation to the final put in
> nfs4_put_delegation for both variants. While I'd normally prefer
> what you do in the patch it just seems like churn with the further
> changes.
>
Ahh ok. I misunderstood what you were suggesting. Moving it into the
actual callers of nfs4_free_stid is fine.
Unfortunately, that creates a pile of merge conflicts in the later
patches. I'll just go ahead and change that and resend all of the
delegation patches that Bruce hasn't merged yet. Stay tuned...
--
Jeff Layton <jlayton@primarydata.com>
next prev parent reply other threads:[~2014-07-16 14:28 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-15 10:37 [PATCH 0/7] nfsd: more delegation fixes to prepare for client_mutex removal Jeff Layton
2014-07-15 10:37 ` [PATCH 1/7] nfsd: nfs4_alloc_init_lease should take a nfs4_file arg Jeff Layton
2014-07-15 16:24 ` Christoph Hellwig
2014-07-15 10:37 ` [PATCH 2/7] nfsd: Ensure stateids remain unique until they are freed Jeff Layton
2014-07-15 17:15 ` Christoph Hellwig
2014-07-16 12:17 ` Jeff Layton
2014-07-16 13:49 ` Christoph Hellwig
2014-07-16 14:28 ` Jeff Layton [this message]
2014-07-16 14:29 ` Christoph Hellwig
2014-07-16 14:34 ` Jeff Layton
2014-07-15 10:37 ` [PATCH 3/7] locks: add file_has_lease to prevent delegation break races Jeff Layton
2014-07-15 17:17 ` Christoph Hellwig
2014-07-15 17:31 ` Jeff Layton
2014-07-15 10:37 ` [PATCH 4/7] nfsd: Protect the nfs4_file delegation fields using the fi_lock Jeff Layton
2014-07-15 10:37 ` [PATCH 5/7] nfsd: Move the delegation reference counter into the struct nfs4_stid Jeff Layton
2014-07-16 9:37 ` Christoph Hellwig
2014-07-15 10:37 ` [PATCH 6/7] nfsd: Simplify stateid management Jeff Layton
2014-07-15 10:37 ` [PATCH 7/7] nfsd: Fix delegation revocation Jeff Layton
2014-07-15 16:24 ` [PATCH 0/7] nfsd: more delegation fixes to prepare for client_mutex removal Christoph Hellwig
2014-07-16 12:37 ` [PATCH 8/7] nfsd: Convert delegation counter to an atomic_long_t type Jeff Layton
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20140716102824.27eeb209@tlielax.poochiereds.net \
--to=jeff.layton@primarydata.com \
--cc=bfields@fieldses.org \
--cc=hch@infradead.org \
--cc=linux-nfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox