On Tue, Jun 20, 2023 at 12:50 PM Christian Brauner <brauner@xxxxxxxxxx> wrote: > > On Sun, Jun 18, 2023 at 03:45:06PM +0300, Amir Goldstein wrote: > > Since v6.3, I noticed that generic/604 does not run on overlayfs > > because: > > > > generic/604 -- upper fs needs to support d_type > > > > This is odd because the base fs I am using (xfs) does support d_type. > > > > The reason is that for overlayfs, this sequence run by this test: > > > > _scratch_unmount & > > _scratch_mount > > > > Translates to: > > > > umount $OVL_MNT; umount $BASE_MNT & > > mount $BASE_MNT ...; mount $OVL_MNT ... > > > > Which can end up reordred as: > > > > umount $OVL_MNT; > > mount $BASE_MNT ... > > umount $BASE_MNT & > > mount $OVL_MNT ... > > > > and overlayfs is trying to use a non-existing upper fs. > > > > Use UMOUNT_PROG directly instead of the _scratch_unmount > > helper, to avoid unmounting the base fs. > > > > Incidently, the only thing that has changed in overlayfs in v6.3 > > is idmapped mounts support and the test in question was run without > > idmapped mounts enabled, so the cahnge in behavior must be related > > to some subtle timing change. > > I implemented testing overlayfs on top of idmapped mounts in xfstests > and changed a lot of the overlayfs test infrastructure. So I wouldn't be > surprised if that's the reason. Could be, but to clarify, I was comparing kernel v6.2 to v6.3 with same xfstests and in both cases I did not set IDMAPPED_MOUNTS, so _idmapped_mount() should have been a noop. Thanks, Amir.