public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Dave Chinner <david@fromorbit.com>
To: Stefan Priebe - Profihost AG <s.priebe@profihost.ag>
Cc: xfs@oss.sgi.com
Subject: Re: XFS crashes with shrink_slab: xfs_reclaim_inode_shrink+0x0/0x10d negative objects to delete nr
Date: Thu, 2 Jun 2011 09:51:50 +1000	[thread overview]
Message-ID: <20110601235150.GL561@dastard> (raw)
In-Reply-To: <4DE61A7F.40800@profihost.ag>

On Wed, Jun 01, 2011 at 12:54:55PM +0200, Stefan Priebe - Profihost AG wrote:
> Hi guys,
> 
> we're seeing a really bad behaviour on one of our machines running
> vanilla 2.6.32.40 kernel.
> 
> It freezes from time to time or processes starts to hang. At the
> same time the following message appears in the kernel log:

Perhaps 2.6.32.40 needs this patch:

commit 081003fff467ea0e727f66d5d435b4f473a789b3
Author: Johannes Weiner <hannes@cmpxchg.org>
Date:   Fri Oct 1 07:43:54 2010 +0000

    xfs: properly account for reclaimed inodes

    When marking an inode reclaimable, a per-AG counter is increased, the
    inode is tagged reclaimable in its per-AG tree, and, when this is the
    first reclaimable inode in the AG, the AG entry in the per-mount tree
    is also tagged.

    When an inode is finally reclaimed, however, it is only deleted from
    the per-AG tree.  Neither the counter is decreased, nor is the parent
    tree's AG entry untagged properly.

    Since the tags in the per-mount tree are not cleared, the inode
    shrinker iterates over all AGs that have had reclaimable inodes at one
    point in time.

    The counters on the other hand signal an increasing amount of slab
    objects to reclaim.  Since "70e60ce xfs: convert inode shrinker to
    per-filesystem context" this is not a real issue anymore because the
    shrinker bails out after one iteration.

    But the problem was observable on a machine running v2.6.34, where the
    reclaimable work increased and each process going into direct reclaim
    eventually got stuck on the xfs inode shrinking path, trying to scan
    several million objects.

    Fix this by properly unwinding the reclaimable-state tracking of an
    inode when it is reclaimed.

    Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
    Cc: stable@kernel.org
    Reviewed-by: Dave Chinner <dchinner@redhat.com>
    Signed-off-by: Alex Elder <aelder@sgi.com>

> 
> shrink_slab: xfs_reclaim_inode_shrink+0x0/0x10d negative objects to
> delete nr=-274207938304

That's an error messge that was introduced in 2.6.34, and the above
patch was introduced in 2.6.36. Obvious a bug has been backported to
2.6.32, but was the fix? It was clearly marked for stable kernels,
but I have no I have no idea if the stable kernel folks pushed it
back to .32. I really don't have the time to track what fixes were
or were not backported to what kernels because there are too many
"long term stable" kernels in existance now.

Cheers,

Dave.
-- 
Dave Chinner
david@fromorbit.com

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

  reply	other threads:[~2011-06-01 23:51 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-06-01 10:54 XFS crashes with shrink_slab: xfs_reclaim_inode_shrink+0x0/0x10d negative objects to delete nr Stefan Priebe - Profihost AG
2011-06-01 23:51 ` Dave Chinner [this message]
  -- strict thread matches above, loose matches on Subject: below --
2011-06-01 11:05 Stefan Priebe - Profihost AG
2011-06-07  6:00 Stefan Priebe - Profihost AG

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=20110601235150.GL561@dastard \
    --to=david@fromorbit.com \
    --cc=s.priebe@profihost.ag \
    --cc=xfs@oss.sgi.com \
    /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