Hi, On 06/02/17 17:36, Michael Biebl wrote: > Am 06.02.2017 um 18:07 schrieb James Cowgill: >> Source: systemd >> Version: 232-15 >> Severity: important >> >> Hi, >> >> While testing #852811 I discovered that systemd does not build within an >> overlayfs schroot (which all my mips chroots are setup as). Specifically >> the "test-copy" test fails with: >> >>> FAIL: test-copy >>> =============== >>> >>> test_copy_file >>> test_copy_file_fd >>> test_copy_tree >>> Assertion 'access(f, F_OK) == 0' failed at ../src/test/test-copy.c:136, >>> function test_copy_tree(). Aborting. >>> FAIL test-copy (exit status: 134) >> >> The assertion is caused by a file not being copied by copy_tree and that >> is in turn caused by this line: >> https://sources.debian.net/src/systemd/232-15/src/basic/copy.c/#L342 >> >> The above line does not copy files if the device of the file is not the >> same as the device of the parent directory, however on an overlayfs >> filesystem this is condition is always true for non-directories. >> >> From https://www.kernel.org/doc/Documentation/filesystems/overlayfs.txt: >>> This approach is 'hybrid' because the objects that appear in the >>> filesystem do not all appear to belong to that filesystem. In many >>> cases an object accessed in the union will be indistinguishable >>> from accessing the corresponding object from the original filesystem. >>> This is most obvious from the 'st_dev' field returned by stat(2). >>> >>> While directories will report an st_dev from the overlay-filesystem, >>> all non-directory objects will report an st_dev from the lower or >>> upper filesystem that is providing the object. Similarly st_ino will >>> only be unique when combined with st_dev, and both of these can change >>> over the lifetime of a non-directory object. Many applications and >>> tools ignore these values and will not be affected. >> >> Note that this behavior is different from say 'cp -Rx'. cp only checks >> the value of st_dev if the file is a directory. This allows it to work >> correctly with overlayfs. >> http://sources.debian.net/src/coreutils/8.26-2/src/copy.c/?hl=2547#L2547 > > I think this is a bug in overlayfs.
Well it's the documented behavior of overlayfs which others have probably relied on, so I think it's very unlikely overlayfs will be changed now. James
signature.asc
Description: OpenPGP digital signature