zsj@debian:~$ cat /sys/module/overlay/parameters/permit_mounts_in_userns
Y
zsj@debian:~/t$ mkdir -p test/lower/a test/merged test/upper test/work
zsj@debian:~/t$ uname -a | tee test/lower/a/a
Linux debian 5.10.0-3-amd64 #1 SMP Debian 5.10.13-1 (2021-02-06) x86_64 GNU/Linux
zsj@debian:~/t$ unshare -m -U -r
root@debian:~/t# mount -t overlay -o rw,lowerdir=./test/lower,upperdir=./test/upper,workdir=./test/work overlay ./test/merged/
root@debian:~/t# rm -rf ./test/merged/a
rm: cannot remove './test/merged/a': Input/output error
root@debian:~/t# find test -ls
7350352 4 drwxr-xr-x 6 root root 4096 Mar 3 22:44 test
7351341 4 drwxr-xr-x 3 root root 4096 Mar 3 22:44 test/lower
7353492 4 drwxr-xr-x 2 root root 4096 Mar 3 22:44 test/lower/a
7356441 4 -rw-r--r-- 1 root root 82 Mar 3 22:44 test/lower/a/a
7356069 4 drwxr-xr-x 3 root root 4096 Mar 3 22:45 test/work
7358324 4 d--------- 2 root root 4096 Mar 3 22:45 test/work/work
7358564 0 c--------- 2 root root 0, 0 Mar 3 22:45 test/work/work/#4
7354400 4 drwxr-xr-x 3 root root 4096 Mar 3 22:44 test/upper
7358563 4 drwxr-xr-x 2 root root 4096 Mar 3 22:45 test/upper/a
7358564 0 c--------- 2 root root 0, 0 Mar 3 22:45 test/upper/a/a
7354400 4 drwxr-xr-x 1 root root 4096 Mar 3 22:44 test/merged
7353492 4 drwxr-xr-x 1 root root 4096 Mar 3 22:45 test/merged/a
> Do you see any kernel log message from overlay fs? Might it depend on
> the underlying filesystem? Can you create a white-out char dev node
> manually?
>
[1215353.859717] Setting dangerous option permit_mounts_in_userns - tainting kernel
[1215353.859841] overlayfs: overlayfs: Allowing overlay mounts in user namespaces bears security risks
[1215425.416543] overlayfs: upper fs does not support xattr, falling back to index=off and metacopy=off.
The underlying fs is ext4.
zsj@debian:~/t$ mount|grep nvme
/dev/nvme0n1p2 on / type ext4 (rw,relatime,errors=remount-ro)
/dev/nvme0n1p4 on /home type ext4 (rw,relatime)
/dev/nvme0n1p1 on /boot/efi type vfat (rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=mixed,utf8,errors=remount-ro)
I don't know how to test "create a white-out char dev node manually".
Thanks