Overlayfs rename bug

From: David Howells
Date: Tue Jun 24 2014 - 12:47:38 EST


Miklos Szeredi <miklos@xxxxxxxxxx> wrote:

> > Tentative Tested-by from me unless I can break it.
>
> Thanks for testing.

Tested-by retracted temporarily. There's a bug in rename handling. If you
clone:

http://git.infradead.org/users/dhowells/unionmount-testsuite.git

and check out the switch-to-python branch and do:

./run --no rename-mass

then this works with no unioning used, but if you do:

./run --ov rename-mass

to run it on overlayfs, then the following occurs:

[root@andromeda union-testsuite]# ./run --ov rename-mass
***
*** ./run --ov --ts=0 rename-mass
***
TEST rename-mass.py:15: Mass rename sequential files into each other's vacated name slots
./run --rename /mnt/a/foo103 /mnt/a/foo104
./run --rename /mnt/a/foo102 /mnt/a/foo103
./run --rename /mnt/a/foo101 /mnt/a/foo102
./run --rename /mnt/a/foo100 /mnt/a/foo101
./run --rename /mnt/a/foo104 /mnt/a/foo105
/mnt/a/foo104: File unexpectedly found

strace shows:

rename("/mnt/a/foo104", "/mnt/a/foo105") = 0
lstat("/mnt/a/foo104", {st_mode=S_IFREG|0644, st_size=12, ...}) = 0

which shouldn't happen.

The kernel is 17eb601eb5dbc8a2e200872380c03400813d4f1a from overlayfs.v22.

David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/