Hi Amir,
Em 09/06/2025 12:19, Amir Goldstein escreveu:
Zorro,
Please find two new tests by Miklos to cover ian overlayfs feature
merged to 6.16-rc1. Those tests do notrun on older kernels.
Using this patchset on top of 6.16-rc1 I still found that overlay/012
still doesn't work in my setup:
$ sudo FSTYPE=ext4 TEST_DIR=/tmp/dir1 TEST_DEV=/dev/vdb
SCRATCH_DEV=/dev/vdc SCRATCH_MNT=/tmp/dir2 ./check -overlay overlay/012
...
-rm: cannot remove 'SCRATCH_MNT/test': Stale file handle
+rm: cannot remove 'SCRATCH_MNT/test': Is a directory
Here's a smaller reproducer for 012:
```
mkdir -p /tmp/dir2/ovl-lower/test /tmp/dir2/ovl-upper /tmp/dir2/ovl-work
tmp/dir2/ovl-mnt
sudo mount -t overlay
-olowerdir=/tmp/dir2/ovl-lower,upperdir=/tmp/dir2/ovl-upper,workdir=/tmp/dir2/ovl-work
/tmp/dir2 /tmp/dir2/ovl-mnt
rmdir /tmp/dir2/ovl-mnt/test
touch /tmp/dir2/ovl-mnt/test
rm /tmp/dir2/ovl-upper/test
# rm /tmp/dir2/ovl-mnt/test (bug happens here)
```
Before executing the last line, if you run ls you can see that test is a
file:
$ ls -la dir2/ovl-mnt/test
-rw-r--r-- 0 user user 0 Jun 10 17:54 dir2/ovl-mnt/test
After trying to remove the file, the previous ls command is empty now:
$ rm dir2/ovl-mnt/test
rm: cannot remove 'dir2/ovl-mnt/test': Is a directory
$ ls -la dir2/ovl-mnt/test
total 0
drwxr-xr-x 2 user user 40 Jun 10 17:54 .
drwxr-xr-x 1 user user 40 Jun 10 17:55 ..
But running it in a upper level shows the file as a directory:
$ ls -la dir2/ovl-mnt/
total 0
drwxr-xr-x 1 user user 40 Jun 10 17:55 .
drwxr-xr-x 6 user user 120 Jun 10 17:54 ..
drwxr-xr-x 2 user user 40 Jun 10 17:54 test