Linux kernel -stable discussions
 help / color / mirror / Atom feed
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

  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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox