linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mark Moseley <moseleymark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Jeff Layton <jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Cc: linux-nfs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: BUG() in shrink_dcache_for_umount_subtree on nfs4 mount
Date: Thu, 31 Mar 2011 12:17:53 -0700	[thread overview]
Message-ID: <AANLkTimS19xXqwTgjZ7b6=D5OoNAqeGzBJk6FEFBNVAe@mail.gmail.com> (raw)
In-Reply-To: <20110330213748.513d0774-4QP7MXygkU+dMjc06nkz3ljfA9RmPOcC@public.gmane.org>

On Wed, Mar 30, 2011 at 6:37 PM, Jeff Layton <jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> wrote:
> On Wed, 30 Mar 2011 14:55:00 -0700
> Mark Moseley <moseleymark-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
>
>> > I'm not 100% sure it's related (but I'm going to guess it is) but on
>> > these same boxes, they're not actually able to reboot at the end of a
>> > graceful shutdown. After yielding that bug and continuing with the
>> > shutdown process, it gets all the way to exec'ing:
>> >
>> > reboot -d -f -i
>> >
>> > and then just hangs forever. I'm guessing a thread is hung still
>> > trying to unmount things. On another box, I triggered that bug with a
>> > umount of one top-level mount that had subtrees. When I umount'd
>> > another top-level mount with subtrees on that same box, it's blocked
>> > and unkillable. That second umount also logged another bug to the
>> > kernel logs.
>> >
>> > In both umounts described above, the entries in /proc/mounts go away
>> > after the umount.
>> >
>> > Jeff, are you at liberty to do a graceful shutdown of the box you saw
>> > that bug on? If so, does it actually reboot?
>>
>>
>> A bit more info: On the same boxes, freshly booted but with all the
>> same mounts (even the subtrees) mounted, I don't get that bug, so it
>> seems to happen just when there's been significant usage within those
>> mounts. These are all read-only mounts, if it makes a difference.
>>
>> I was however able to trigger the bug on a box that had been running
>> (web serving) for about 15 minutes. Here's a snippet from slabinfo
>> right before umount'ing (let me know if more of it would help):
>>
>
> No, it hung. Unfortunately, I didn't collect any info that told me
> where it was hung though.
>
> I believe that's fairly typical though in situations like this. The
> problem is that we likely have a dentry refcount leak somewhere. The
> vfsmount refcount was low enough to allow an unmount though. Often
> these sorts of problems lurk in error handling code...
>
>> # grep nfs /proc/slabinfo
>> nfsd4_delegations      0      0    360   22    2 : tunables    0    0
>>   0 : slabdata      0      0      0
>> nfsd4_stateids         0      0    120   34    1 : tunables    0    0
>>   0 : slabdata      0      0      0
>> nfsd4_files            0      0    136   30    1 : tunables    0    0
>>   0 : slabdata      0      0      0
>> nfsd4_stateowners      0      0    424   38    4 : tunables    0    0
>>   0 : slabdata      0      0      0
>> nfs_direct_cache       0      0    136   30    1 : tunables    0    0
>>   0 : slabdata      0      0      0
>> nfs_write_data        46     46    704   23    4 : tunables    0    0
>>   0 : slabdata      2      2      0
>> nfs_read_data        207    207    704   23    4 : tunables    0    0
>>   0 : slabdata      9      9      0
>> nfs_inode_cache    23901  23901   1056   31    8 : tunables    0    0
>>   0 : slabdata    771    771      0
>> nfs_page             256    256    128   32    1 : tunables    0    0
>>   0 : slabdata      8      8      0
>
> slabinfo probably won't tell us much here. If we can narrow down the
> reproducer for this though then that would definitely help.
> Actually, /proc/self/mountstats might give us something to go on...

Would turning on kmemleak and letting it run for a bit (luckily 15
mins of regular use seems to be enough to trigger this bug) tell us
anything? I can do that easily enough but I don't know if it tracks
dentry entries.

Also I'll grab mountstats as well before/after trying a umount.
Anything in particular within mountstats I should pay close attention
to?
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  parent reply	other threads:[~2011-03-31 19:17 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-25 20:11 BUG() in shrink_dcache_for_umount_subtree on nfs4 mount Jeff Layton
2011-03-29  1:21 ` Mark Moseley
2011-03-30 21:05   ` Mark Moseley
2011-03-30 21:55     ` Mark Moseley
     [not found]       ` <AANLkTi=XA0dd7WJpX8DU-T_QSxnXmMfK-vLg+SpMR-cA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-03-31  1:37         ` Jeff Layton
     [not found]           ` <20110330213748.513d0774-4QP7MXygkU+dMjc06nkz3ljfA9RmPOcC@public.gmane.org>
2011-03-31 19:17             ` Mark Moseley [this message]
     [not found]               ` <AANLkTimS19xXqwTgjZ7b6=D5OoNAqeGzBJk6FEFBNVAe-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-03-31 23:21                 ` Mark Moseley
     [not found]                   ` <AANLkTi=dinD0KeHDb1S8k6L0yfhGsAxVxiz7TwszVQ7E-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-04-27 23:23                     ` Mark Moseley
     [not found]                       ` <BANLkTik_PML+cjge4e8ne-mq-BwSEjZMZg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-05-25 20:08                         ` Jeff Layton
     [not found]                           ` <20110525160815.666844ad-9yPaYZwiELC+kQycOl6kW4xkIHaj4LzF@public.gmane.org>
2011-05-26 13:49                             ` Jeff Layton
     [not found]                               ` <20110526094929.71c248ee-xSBYVWDuneFaJnirhKH9O4GKTjYczspe@public.gmane.org>
2011-05-26 15:02                                 ` Ian Kent
2011-05-26 20:20                                   ` Jeff Layton
2011-05-27 19:51                                   ` Mark Moseley
2011-05-26 14:47               ` Ian Kent

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='AANLkTimS19xXqwTgjZ7b6=D5OoNAqeGzBJk6FEFBNVAe@mail.gmail.com' \
    --to=moseleymark-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=jlayton-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
    --cc=linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-nfs-u79uwXL29TY76Z2rM5mHXA@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).