NFS Locking Issue
Kostik Belousov
kostikbel at gmail.com
Wed Jul 5 13:20:17 UTC 2006
On Wed, Jul 05, 2006 at 02:04:59PM +0100, Robert Watson wrote:
>
> On Wed, 5 Jul 2006, Kostik Belousov wrote:
>
> >>Also, the both lockd processes now put identification information in the
> >>proctitle (srv and kern). SIGUSR1 shall be sent to srv process.
> >
> >Hmm, after looking at the dump there and some code reading, I have noted
> >the following:
> >
> >1. NLM lock request contains the field caller_name. It is filled by (let
> >call it) kernel rpc.lockd by the results of hostname(3).
> >
> >2. This caller_name is used by server rpc.lockd to send request for host
> >monitoring to rpc.statd (see send_granted). Request is made by clnt_call,
> >that is blocking rpc call.
> >
> >3. rpc.statd does getaddrinfo on caller_name to determine address of the
> >host to monitor.
> >
> >If the getaddrinfo in step 3 waits for resolver, then your client machine
> >will get locking process in"lockd" state.
> >
> >Could people experiencing rpc.lockd mistery at least report whether
> >_server_ machine successfully resolve hostname of clients as reported by
> >hostname? And, if yes, to what family of IP protocols ?
>
> It's not impossible. It would be interesting to see if ps axl reports that
> rpc.lockd is in the kqread state, which would suggest it was blocked in the
^^^^^^^^^^^^ rpc.statd :).
> resolver. We probably ought to review rpc.statd and make sure it's
> generally sensible. I've noticed that its notification process on start is
> a bit poorly structured in terms of how it notifies hosts of its state
> change -- if one host is down, it may take a very long time to notify other
> hosts.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-stable/attachments/20060705/3685aac3/attachment.pgp
More information about the freebsd-stable
mailing list