On Fri, Nov 29, 2019 at 9:13 PM Gao Xiang <[email protected]> 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
