From: Pavel Machek <pavel@ucw.cz>
To: Al Viro <viro@zeniv.linux.org.uk>
Cc: Andrew Morton <akpm@linux-foundation.org>,
kernel list <linux-kernel@vger.kernel.org>,
sfr@canb.auug.org.au
Subject: Re: next-20190708: kernel BUG at lib/lockref.c:189, softlockups in shrink_dcache...?
Date: Thu, 11 Jul 2019 09:24:23 +0200 [thread overview]
Message-ID: <20190711072423.GA4219@amd> (raw)
In-Reply-To: <20190711002527.GD17978@ZenIV.linux.org.uk>
[-- Attachment #1: Type: text/plain, Size: 1331 bytes --]
On Thu 2019-07-11 01:25:27, Al Viro wrote:
> On Wed, Jul 10, 2019 at 05:09:12PM -0700, Andrew Morton wrote:
> > On Wed, 10 Jul 2019 22:13:11 +0200 Pavel Machek <pavel@ucw.cz> wrote:
> >
> > > Hi!
> > >
> > > I'm getting some nastyness from lockref / memory management.
> > >
> > > Any ideas? Any ideas who to talk to?
> > >
> >
> > I'd be suspecting Al's a99d7580f66e737 ("Teach shrink_dcache_parent()
> > to cope with mixed-filesystem shrink lists").
>
> It is, and it's already fixed. See 9bdebc2bd1c4 with fixes folded in;
> the incremental is
>
> diff --git a/fs/dcache.c b/fs/dcache.c
> index d8732cf2e302..01b8cae41a71 100644
> --- a/fs/dcache.c
> +++ b/fs/dcache.c
> @@ -1555,7 +1555,9 @@ void shrink_dcache_parent(struct dentry *parent)
> d_walk(parent, &data, select_collect2);
> if (data.victim) {
> struct dentry *parent;
> + spin_lock(&data.victim->d_lock);
> if (!shrink_lock_dentry(data.victim)) {
> + spin_unlock(&data.victim->d_lock);
> rcu_read_unlock();
> } else {
> rcu_read_unlock();
Thanks! It only happened once under high load, so it seems it will not
be coming back.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
prev parent reply other threads:[~2019-07-11 7:24 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-10 20:13 next-20190708: kernel BUG at lib/lockref.c:189, softlockups in shrink_dcache...? Pavel Machek
2019-07-11 0:09 ` Andrew Morton
2019-07-11 0:25 ` Al Viro
2019-07-11 7:24 ` Pavel Machek [this message]
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=20190711072423.GA4219@amd \
--to=pavel@ucw.cz \
--cc=akpm@linux-foundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=sfr@canb.auug.org.au \
--cc=viro@zeniv.linux.org.uk \
/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.