Compatibility with overlayfs

David Michael fedora.dm0 at gmail.com
Sun Dec 1 02:15:25 AEDT 2019


On Fri, Nov 29, 2019 at 9:13 PM Gao Xiang <hsiangkao at aol.com> wrote:
> On Sat, Nov 30, 2019 at 09:29:04AM +0800, Gao Xiang via Linux-erofs wrote:
> > Hi David,
> >
> > On Fri, Nov 29, 2019 at 03:22:15PM -0500, David Michael wrote:
> > > Hi,
> > >
> > > I tried to test EROFS on Linux 5.4 as the root file system and mounted
> > > a writable overlay (with upper layer on tmpfs) over /etc, but I get
> > > ENODATA errors when attempting to modify files.  For example, adding a
> > > user results in "Failed to take /etc/passwd lock: No data available".
> > > Files can be modified after unlinking and restoring them so they're
> > > created on the upper layer.  This is not necessary with other
> > > read-only file systems (at least squashfs or ext4 with the read-only
> > > feature).  I tried while forcing compact and extended inodes.
> > >
> > > Is EROFS intended to be usable as a lower layer with overlayfs?
> >
> > Yes, and overlayfs were used on our smartphones for development use
> > only as well. I think it's weird, I will try it on the latest kernel
> > now, and see if I can reproduce this issue soon...
> >
> > Thanks for your report!
> >
> > Thanks,
> > Gao Xiang
>
> I have reproduced this issue -- That is due to erofs will return an
> unexpected -ENODATA when calling listxattr without xattr and cause
> copy_up fail:

Oh, sorry I forgot to mention I had xattrs disabled during my testing.
I confirmed it works with xattrs, so I can use that as a workaround in
binary distros until a fix is upstream.

> since our products using xattr enabled EROFS with overlayfs,
> so we didn't observe this issue before. So could you try
> the following patch (If it can resolve the issue, I will
> send it for 5.5-rc2 and backport to all stable version)?
> Look forward to your feekback.

Yes, I applied the patch and everything works now.

Thanks.

David


More information about the Linux-erofs mailing list