From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: Mikhail Afanasyev <mikhail.afanasyev@tri.global>
Cc: Miklos Szeredi <mszeredi@redhat.com>,
Stefan Bader <stefan.bader@canonical.com>,
stable@vger.kernel.org
Subject: Re: ovl: renames in overlayfs over tmpfs returns ESTALE in 4.4
Date: Tue, 13 Sep 2016 21:59:23 +0200 [thread overview]
Message-ID: <20160913195923.GA14067@kroah.com> (raw)
In-Reply-To: <6ac370bf-3537-0c3e-97d5-f67ece5c7bf2@tri.global>
On Tue, Sep 13, 2016 at 01:48:31PM -0400, Mikhail Afanasyev wrote:
> Hello,
>
> I believe the 4.4.y kernel has broken overlayfs: removing the file which is
> present in lower layer, then renaming a file from upper layer to have the
> same name fails with ESTALE. This pattern is used quite often, for example
> by 'depmod' and 'apt-get update'. The bug only seems to happen when some of
> the underlying directories are on tmpfs.
>
> The test script (below) works fine on Ubuntu kernel 4.4.0-34-generic or
> earlier, and it fails in Ubuntu kernel 4.4.0-36-generic. This corresponds to
> Linux 4.4.16.
Ubuntu adds a few hundred other patches to their kernel as well, can you
try a "real" 4.4-stable release please?
> The error is:
> mv: cannot move 'ovf/file.new' to 'ovf/file': Stale file handle
>
> While I have not performed the full bisect, there were only 3 patches
> touching 'fs/overlayfs' which went into the tree between the two revisions:
> https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/xenial/log/?id=b275624b3b4303d21eefd78c5b3bf04c34267e4e
>
> ovl: verify upper dentry before unlink and rename
> https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/xenial/commit/?id=a4452ab01db4780937d4e19861d3b841c373c3b5
>
> ovl: verify upper dentry in ovl_remove_and_whiteout()
> https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/xenial/commit/?id=90089541cf2982cff69724c34f7ae9a088df9c2f
>
> ovl: Copy up underlying inode's ->i_mode to overlay inode
> https://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/xenial/commit/?id=8326f3ef42b56d97d1060adff6d4ab35818e3b9a
>
> Of them, the first two add a return with ESTALE error and would be the prime
> suspects.
> I also understand that 4.4.16 is a somewhat old kernel, but I believe the
> bug may still be present in the latest linux-4.4.y -- there were no changes
> to the relevant file (fs/overlayfs/dir.c) since these patches.
In the 4.4 kernel to be released tomorrow, there are a number of ovfs
patches, can you test that out?
thanks,
greg k-h
next prev parent reply other threads:[~2016-09-13 19:59 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-13 17:48 ovl: renames in overlayfs over tmpfs returns ESTALE in 4.4 Mikhail Afanasyev
2016-09-13 19:59 ` Greg Kroah-Hartman [this message]
2016-09-14 9:41 ` Stefan Bader
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=20160913195923.GA14067@kroah.com \
--to=gregkh@linuxfoundation.org \
--cc=mikhail.afanasyev@tri.global \
--cc=mszeredi@redhat.com \
--cc=stable@vger.kernel.org \
--cc=stefan.bader@canonical.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 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.