All of lore.kernel.org
 help / color / mirror / Atom feed
From: Matthew Mitchell <matthew@geodev.com>
To: nfs@lists.sourceforge.net
Subject: More about nfsd/lockd hang in 2.4.20+NFS_ALL
Date: Fri, 13 Jun 2003 08:46:35 -0500	[thread overview]
Message-ID: <3EE9D5BB.6040600@geodev.com> (raw)

(see my earlier message from June 10 for more information)

So this morning it happened again.  Seems that when the operator tried 
to log in to the disk server as himself, it NFS-mounted his home 
directory for him.  This is a loopback mount.  The message printed out 
by lockd was
	lockd: rejected NSM callback from 7f000001:32769

(4 times).  This is in fs/lockd/svcproc.c and svc4proc.c, in the 
function nlmsvc_proc_sm_notify.  I am not sure what the difference 
between "nlm" and "nlm4" is, but I bet someone on this list knows...

In any event, I noticed this right as it was happening, so I was able to 
kill -9 the operator's login and the system recovered.  Symptoms of the 
hang were like I had seen before -- it looks like this is capable of 
hanging every NFS service running on the machine.

For now I just changed the automount map so this won't happen.  I can't 
imagine that this behavior is correct, so perhaps someone would be 
interested in helping me understand what is going on?  There should be 
no technical reason why a loopback NFS mount should fail, even though 
you might not really want to do it for performance reasons.

The code looks like this:

         if (saddr.sin_addr.s_addr != htonl(INADDR_LOOPBACK)
          || ntohs(saddr.sin_port) >= 1024) {
                 printk(KERN_WARNING
                         "lockd: rejected NSM callback from %08x:%d\n",
                         ntohl(rqstp->rq_addr.sin_addr.s_addr),
                         ntohs(rqstp->rq_addr.sin_port));
                 return rpc_system_err;
         }

In this case, though, the rq_addr.sin_addr.s_addr is that of loopback, 
as it says in the message (7f000001 => 127.0.0.1).  It would appear that 
this is a lock notify that's supposed to be called when a client 
reconnects to a server, but it thinks it's being called with some 
impossible values.

Am I on the mark here?  Something that might be relevant: this server 
was recently pressed into use as the server for these volumes. 
Previously, it was mounting them (home directories) from another server, 
which died.  Perhaps it has some old lock information lying around, and 
when it tries to connect to itself as a client, it tries to reacquire 
its locks?  Or perhaps it is something more innocuous.

In any case, comments or help appreciated.

-- 
Matthew Mitchell
Systems Programmer/Administrator            matthew@geodev.com
Geophysical Development Corporation         phone 713 782 1234
1 Riverway Suite 2100, Houston, TX  77056     fax 713 782 1829



-------------------------------------------------------
This SF.NET email is sponsored by: eBay
Great deals on office technology -- on eBay now! Click here:
http://adfarm.mediaplex.com/ad/ck/711-11697-6916-5
_______________________________________________
NFS maillist  -  NFS@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nfs

             reply	other threads:[~2003-06-13 13:50 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-13 13:46 Matthew Mitchell [this message]
2003-06-13 15:48 ` More about nfsd/lockd hang in 2.4.20+NFS_ALL Trond Myklebust
2003-06-13 16:19   ` Matthew Mitchell
2003-06-13 16:31     ` Trond Myklebust
2003-06-13 16:48       ` Matthew Mitchell
2003-06-13 21:21         ` Trond Myklebust

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=3EE9D5BB.6040600@geodev.com \
    --to=matthew@geodev.com \
    --cc=nfs@lists.sourceforge.net \
    /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.