From: Dominique Martinet <asmadeus@codewreck.org>
To: Hugh Dickins <hughd@google.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
"J. Bruce Fields" <bfields@fieldses.org>,
Dominique Martinet <dominique.martinet@cea.fr>,
Al Viro <viro@zeniv.linux.org.uk>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>
Subject: Re: v4.2-rc dcache regression, probably 75a6f82a0d10
Date: Fri, 31 Jul 2015 22:50:36 +0200 [thread overview]
Message-ID: <20150731205036.GA3752@nautica> (raw)
In-Reply-To: <alpine.LSU.2.11.1507311207160.11122@eggly.anvils>
Hugh Dickins wrote on Fri, Jul 31, 2015:
> It will indeed be weird and odd if it confirms that DCACHE_DISCONNECTED
> revert is good. I agree that Dominique's 4bf46a272647 seems now more
> likely, if still unlikely; but that was included in v4.1, and I saw
> no problem with v4.1 once the rmap_walk() skip was fixed.
I think it could, actually, and that neither commits are actually bad --
just that they affect timing enough to raise an issue between d_delete
(I guess?) and link_path_walk (see last mail in other thread[1])
It's probably an old race that was very hard to hit because of cache
coherency.
Basically, before the wmb/rmb, the dentry was always updated closely to
its flags, so the other CPU would "usually" get both updates at the same
time; the barriers make it so the updates are split and it's possible to
get it, and would explain why I could pick 4bf46a2726 as "the one"
I'm not sure why the problem wouldn't arise on tmpfs though.
Hugh, could you try the reproducer I gave in the other thread[2] on both
filesystems maybe?
I need to let the thing run for a while, might need to tune params as
well. I was trying to fine tune cpu affinity with less threads but it's
not getting anywhere.
I'll also check if it's getting even easier to reproduce with
75a6f82a0d10 (or a recent kernel), who knows... How fast do you hit the
bug with the commit?
Thanks,
--
Dominique
[1] https://marc.info/?l=linux-fsdevel&m=143835651005259&w=2
[2] https://marc.info/?l=linux-fsdevel&m=143825706609188&w=2
next prev parent reply other threads:[~2015-07-31 20:50 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-31 17:46 v4.2-rc dcache regression, probably 75a6f82a0d10 Hugh Dickins
2015-07-31 17:59 ` Dominique Martinet
2015-07-31 18:00 ` J. Bruce Fields
2015-07-31 18:42 ` Linus Torvalds
2015-07-31 19:42 ` Hugh Dickins
2015-07-31 20:50 ` Dominique Martinet [this message]
2015-07-31 22:52 ` Linus Torvalds
2015-08-01 0:20 ` Hugh Dickins
2015-08-01 5:58 ` Dominique Martinet
2015-08-01 7:26 ` Al Viro
2015-08-01 10:19 ` Dominique Martinet
2015-08-01 10:50 ` Dominique Martinet
2015-08-01 16:09 ` Linus Torvalds
2015-08-01 17:09 ` Al Viro
2015-08-02 0:14 ` [git pull] vfs.git spurious ENOTDIR fix Al Viro
2015-08-02 0:23 ` Al Viro
2015-08-02 0:42 ` Linus Torvalds
2015-08-02 0:57 ` Linus Torvalds
2015-08-02 1:41 ` Al Viro
2015-08-02 2:39 ` Linus Torvalds
2015-08-02 4:06 ` Hugh Dickins
2015-08-02 4:39 ` Al Viro
2015-08-02 4:42 ` Linus Torvalds
2015-08-02 18:53 ` Hugh Dickins
2015-08-01 0:09 ` v4.2-rc dcache regression, probably 75a6f82a0d10 Hugh Dickins
2015-08-01 4:20 ` Hugh Dickins
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=20150731205036.GA3752@nautica \
--to=asmadeus@codewreck.org \
--cc=bfields@fieldses.org \
--cc=dominique.martinet@cea.fr \
--cc=hughd@google.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--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.