From: "J. Bruce Fields" <bfields@fieldses.org>
To: Trond Myklebust <Trond.Myklebust@netapp.com>
Cc: Andrew Dixie <andrew-0FSrDVjkvKm9koe0gwxAeg@public.gmane.org>,
linux-nfs@vger.kernel.org,
maximilian attems <max-U9r9yeDMy7A@public.gmane.org>
Subject: Re: (fwd) nfs hang on 2.6.24
Date: Wed, 6 Feb 2008 13:31:28 -0500 [thread overview]
Message-ID: <20080206183128.GG5342@fieldses.org> (raw)
In-Reply-To: <1202320337.14889.18.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
On Wed, Feb 06, 2008 at 12:52:17PM -0500, Trond Myklebust wrote:
>
> On Wed, 2008-02-06 at 12:23 -0500, J. Bruce Fields wrote:
> > On Wed, Feb 06, 2008 at 10:15:23AM -0500, Trond Myklebust wrote:
> > >
> > > On Wed, 2008-02-06 at 10:07 -0500, J. Bruce Fields wrote:
> > >
> > > > That went into 2.6.22:
> > > >
> > > > 21315edd4877b593d5bf.. "[PATCH] knfsd: nfsd4: demote "clientid
> > > > in use" printk to a dprintk"
> > > >
> > > > It may suggest a problem if this is happening a lot, though, right?
> > >
> > > The client should always be able to generate a new unique clientid if
> > > this happens.
> >
> > And then the client may fail to reclaim its state on the next server
> > reboot, or mistakenly prevent some other client from reclaiming state,
> > since it's not recording the new clientid in stable storage. So if it's
> > happening a lot then we I suppose we should figure out better ways to
> > generate client id's.
>
> Huh?
>
> If the server reboots, the client will try to reclaim state using the
> _same_ client identifier string.
Oh, right, I was confusing client and server reboot and assuming the
client would forget the uniquifier on server reboot. That's obviously
wrong! The client will forget its own uniquifier on client reboot, but
that's alright since it's happy enough just to let that old state time
out at that point. So the only possible problem is suboptimal behavior
when the client reboot time is less than the lease time.
> Two clients should _not_ be able to generate the same clientid unless
> they're also sharing the same IP address and a number of other
> properties that we include in the client identifier.
Or unless two client implementations just happen to have clashing
clientid generation algorithms, but we hope that's unlikely.
(Except that older Linux clients were prone to produce the same
clientid, if I remember right. But the more likely explanation may be
that these are the result of a single client destroying and then
creating state on the server within a lease period, and the server being
stubborn and refusing to let go of the old state (even though no opens
are associated with it any more) until the end of a lease period. I
think that's a server bug.)
--b.
next prev parent reply other threads:[~2008-02-06 18:31 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-05 9:01 (fwd) nfs hang on 2.6.24 maximilian attems
[not found] ` <20080205090132.GA8286-U9r9yeDMy7A@public.gmane.org>
2008-02-05 22:02 ` Trond Myklebust
2008-02-06 6:24 ` Andrew Dixie
2008-02-06 15:00 ` Trond Myklebust
[not found] ` <1202310021.12647.6.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-02-06 15:07 ` J. Bruce Fields
2008-02-06 15:15 ` Trond Myklebust
[not found] ` <1202310924.12647.24.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-02-06 17:23 ` J. Bruce Fields
2008-02-06 17:52 ` Trond Myklebust
[not found] ` <1202320337.14889.18.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-02-06 18:31 ` J. Bruce Fields [this message]
2008-02-06 21:19 ` Andrew Dixie
[not found] ` <37673.203.167.214.129.1202332746.squirrel-pmwrj2wvkLORZ0GbGNPwb6VXKuFTiq87@public.gmane.org>
2008-02-06 21:45 ` J. Bruce Fields
2008-02-06 22:40 ` Andrew Dixie
[not found] ` <55598.203.167.214.129.1202337638.squirrel-pmwrj2wvkLORZ0GbGNPwb6VXKuFTiq87@public.gmane.org>
2008-02-06 22:58 ` Trond Myklebust
[not found] ` <1202338699.8549.42.camel-rJ7iovZKK19ZJLDQqaL3InhyD016LWXt@public.gmane.org>
2008-02-08 0:05 ` Andrew Dixie
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=20080206183128.GG5342@fieldses.org \
--to=bfields@fieldses.org \
--cc=Trond.Myklebust@netapp.com \
--cc=andrew-0FSrDVjkvKm9koe0gwxAeg@public.gmane.org \
--cc=linux-nfs@vger.kernel.org \
--cc=max-U9r9yeDMy7A@public.gmane.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.