On Wed, 15 Mar 2023 at 19:30, Jannik Glückert via Libstdc++ < libstdc++@gcc.gnu.org> wrote: > This iteration improves error handling for copy_file_range, > particularly around undocumented error codes in earlier kernel > versions. > Additionally this fixes the userspace copy fallback to handle > zero-length files such as in > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=108178. > > Lastly, the case "src gets resized during the copy loop" is now > considered and will return true once the loop hits EOF (this is the > only situation, aside from a zero-length src, where sendfile and > copy_file_range return 0). > I've applied this patch (with some whitespace fixes) and started testing it. I'm seeing some regressions: FAIL: experimental/filesystem/operations/copy.cc execution test FAIL: experimental/filesystem/operations/copy_file.cc execution test The failures in the log look like: terminate called after throwing an instance of 'std::experimental::filesystem::v1::__cxx11::filesystem_error' what(): filesystem error: cannot copy: Input/output error [filesystem-test.copy.2900321341.ySWT77] [filesystem-test.copy.2900321342.vjeAar] FAIL: experimental/filesystem/operations/copy.cc execution test