Bug 216800
Summary: | copy_file_range() returns EXDEV for cross_fs copy between ext4 and xfs, ext4 and tmpfs, and ext2/ext3 and tmpfs | ||
---|---|---|---|
Product: | File System | Reporter: | Nitin (bhutaninitin) |
Component: | VFS | Assignee: | fs_vfs |
Status: | RESOLVED ANSWERED | ||
Severity: | normal | CC: | amir73il, bhutaninitin |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 6.1.0-060100rc5-generic | Subsystem: | |
Regression: | Yes | Bisected commit-id: |
Description
Nitin
2022-12-12 05:25:49 UTC
This is intentional. EXDEV is kernel < 5.3 behavior. This behavior was partially (*) restored due to regression reports. See: https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/commit/?id=d7ba612d0ab10af2ed4e367306784212cc3f3595 (*) partially, because copy_file_range() between two different ext4 is still allowed. (**) above man page commit wrongly states 5.12 as the kernel that changed behavior back. it was later. man page needs to be fixed Thanks. Does later mean 5.15? It seems so. Please see below: $ uname -r 5.15.0-56-generic $ stat -f -c %T . ext2/ext3 $ stat -f -c %T /tmpfsdir tmpfs $ ./copy a.out /tmpfsdir/a.out copy_file_range: Invalid cross-device link $ On Tue, Dec 13, 2022 at 8:30 AM <bugzilla-daemon@kernel.org> wrote: > > https://bugzilla.kernel.org/show_bug.cgi?id=216800 > > --- Comment #2 from Nitin (bhutaninitin@rocketmail.com) --- > Thanks. Does later mean 5.15? It seems so. The change was merged in v5.19 and backported to v5.15.53. 868f9f2f8e00 vfs: fix copy_file_range() regression in cross-fs copies > > Please see below: > $ uname -r > 5.15.0-56-generic > $ stat -f -c %T . > ext2/ext3 > $ stat -f -c %T /tmpfsdir > tmpfs > $ ./copy a.out /tmpfsdir/a.out > copy_file_range: Invalid cross-device link > $ > > -- > You may reply to this email to add a comment. > > You are receiving this mail because: > You are on the CC list for the bug. Thanks a bunch. For the record, man page patch: https://lore.kernel.org/linux-fsdevel/20221213120834.948163-1-amir73il@gmail.com/ |