kernel is 4.5.0

The source is on one subvolume, destination on another subvolume, the
full path from top-level id5 is being used for the copy. I've not
previously seen this error before so I'm not sure what's going on. The
suspicious part to me in the strace is this line:

ioctl(4, BTRFS_IOC_CLONE, 0x3)          = -1 EINVAL (Invalid argument)

?

I don't think this is kernel version related, because I've been using
4.5.0 since release and I've done such reflink copies before. But I'm
not thinking how this is user error.


[root@f23m images]# mount | grep sda
/dev/sda5 on / type btrfs
(rw,noatime,seclabel,ssd,space_cache,subvolid=288,subvol=/f23w-root)
/dev/sda5 on /home type btrfs
(rw,noatime,seclabel,ssd,space_cache,subvolid=289,subvol=/home)
/dev/sda5 on /mnt type btrfs
(rw,relatime,seclabel,ssd,space_cache,subvolid=5,subvol=/)


[root@f23m images]# strace cp --reflink
/mnt/home/chris/Downloads/Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2
/mnt/f23w-root/var/lib/libvirt/images/
execve("/bin/cp", ["cp", "--reflink",
"/mnt/home/chris/Downloads/Fedora"...,
"/mnt/f23w-root/var/lib/libvirt/i"...], [/* 31 vars */]) = 0
brk(NULL)                               = 0x5559e3d18000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f37bc5ce000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=88066, ...}) = 0
mmap(NULL, 88066, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f37bc5b8000
close(3)                                = 0
open("/lib64/libselinux.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260b\0\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=136600, ...}) = 0
mmap(NULL, 2237248, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0x7f37bc18c000
mprotect(0x7f37bc1ab000, 2097152, PROT_NONE) = 0
mmap(0x7f37bc3ab000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1f000) = 0x7f37bc3ab000
mmap(0x7f37bc3ad000, 4928, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f37bc3ad000
close(3)                                = 0
open("/lib64/libacl.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\200\37\0\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=35992, ...}) = 0
mmap(NULL, 2130048, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0x7f37bbf83000
mprotect(0x7f37bbf8b000, 2093056, PROT_NONE) = 0
mmap(0x7f37bc18a000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x7f37bc18a000
close(3)                                = 0
open("/lib64/libattr.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\23\0\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=23320, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f37bc5b7000
mmap(NULL, 2117648, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0x7f37bbd7d000
mprotect(0x7f37bbd81000, 2097152, PROT_NONE) = 0
mmap(0x7f37bbf81000, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4000) = 0x7f37bbf81000
mmap(0x7f37bbf82000, 16, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f37bbf82000
close(3)                                = 0
open("/lib64/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\6\2\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=2103656, ...}) = 0
mmap(NULL, 3934784, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0x7f37bb9bc000
mprotect(0x7f37bbb73000, 2097152, PROT_NONE) = 0
mmap(0x7f37bbd73000, 24576, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1b7000) = 0x7f37bbd73000
mmap(0x7f37bbd79000, 14912, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f37bbd79000
close(3)                                = 0
open("/lib64/libpcre.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\26\0\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=459248, ...}) = 0
mmap(NULL, 2552072, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0x7f37bb74c000
mprotect(0x7f37bb7bb000, 2093056, PROT_NONE) = 0
mmap(0x7f37bb9ba000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6e000) = 0x7f37bb9ba000
close(3)                                = 0
open("/lib64/libdl.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`\16\0\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=19776, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f37bc5b6000
mmap(NULL, 2109712, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0x7f37bb548000
mprotect(0x7f37bb54b000, 2093056, PROT_NONE) = 0
mmap(0x7f37bb74a000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x7f37bb74a000
close(3)                                = 0
open("/lib64/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260`\0\0\0\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=149496, ...}) = 0
mmap(NULL, 2213040, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3,
0) = 0x7f37bb32b000
mprotect(0x7f37bb343000, 2093056, PROT_NONE) = 0
mmap(0x7f37bb542000, 8192, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x17000) = 0x7f37bb542000
mmap(0x7f37bb544000, 13488, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7f37bb544000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f37bc5b5000
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f37bc5b3000
arch_prctl(ARCH_SET_FS, 0x7f37bc5b3800) = 0
mprotect(0x7f37bbd73000, 16384, PROT_READ) = 0
mprotect(0x7f37bb542000, 4096, PROT_READ) = 0
mprotect(0x7f37bb74a000, 4096, PROT_READ) = 0
mprotect(0x7f37bb9ba000, 4096, PROT_READ) = 0
mprotect(0x7f37bbf81000, 4096, PROT_READ) = 0
mprotect(0x7f37bc18a000, 4096, PROT_READ) = 0
mprotect(0x7f37bc3ab000, 4096, PROT_READ) = 0
mprotect(0x5559e2fa8000, 4096, PROT_READ) = 0
mprotect(0x7f37bc5cf000, 4096, PROT_READ) = 0
munmap(0x7f37bc5b8000, 88066)           = 0
set_tid_address(0x7f37bc5b3ad0)         = 6625
set_robust_list(0x7f37bc5b3ae0, 24)     = 0
rt_sigaction(SIGRTMIN, {0x7f37bb330b50, [], SA_RESTORER|SA_SIGINFO,
0x7f37bb33b9f0}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7f37bb330be0, [],
SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7f37bb33b9f0}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM64_INFINITY}) = 0
statfs("/sys/fs/selinux", {f_type="SELINUX_MAGIC", f_bsize=4096,
f_blocks=0, f_bfree=0, f_bavail=0, f_files=0, f_ffree=0, f_fsid={0,
0}, f_namelen=255, f_frsize=4096, f_flags=4128}) = 0
statfs("/sys/fs/selinux", {f_type="SELINUX_MAGIC", f_bsize=4096,
f_blocks=0, f_bfree=0, f_bavail=0, f_files=0, f_ffree=0, f_fsid={0,
0}, f_namelen=255, f_frsize=4096, f_flags=4128}) = 0
brk(NULL)                               = 0x5559e3d18000
brk(0x5559e3d39000)                     = 0x5559e3d39000
access("/etc/selinux/config", F_OK)     = 0
open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=111950656, ...}) = 0
mmap(NULL, 111950656, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f37b4867000
close(3)                                = 0
geteuid()                               = 0
stat("/mnt/f23w-root/var/lib/libvirt/images/", {st_mode=S_IFDIR|0711,
st_size=0, ...}) = 0
stat("/mnt/home/chris/Downloads/Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2",
{st_mode=S_IFREG|0664, st_size=216596480, ...}) = 0
stat("/mnt/f23w-root/var/lib/libvirt/images/Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2",
0x7ffd1d805750) = -1 ENOENT (No such file or directory)
open("/mnt/home/chris/Downloads/Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2",
O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0664, st_size=216596480, ...}) = 0
open("/mnt/f23w-root/var/lib/libvirt/images/Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2",
O_WRONLY|O_CREAT|O_EXCL, 0664) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=0, ...}) = 0
ioctl(4, BTRFS_IOC_CLONE, 0x3)          = -1 EINVAL (Invalid argument)
open("/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = 5
fstat(5, {st_mode=S_IFREG|0644, st_size=2997, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f37bc5cd000
read(5, "# Locale name alias data base.\n#"..., 4096) = 2997
read(5, "", 4096)                       = 0
close(5)                                = 0
munmap(0x7f37bc5cd000, 4096)            = 0
open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/coreutils.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en_US.utf8/LC_MESSAGES/coreutils.mo",
O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/en_US/LC_MESSAGES/coreutils.mo", O_RDONLY) =
-1 ENOENT (No such file or directory)
open("/usr/share/locale/en.UTF-8/LC_MESSAGES/coreutils.mo", O_RDONLY)
= -1 ENOENT (No such file or directory)
open("/usr/share/locale/en.utf8/LC_MESSAGES/coreutils.mo", O_RDONLY) =
-1 ENOENT (No such file or directory)
open("/usr/share/locale/en/LC_MESSAGES/coreutils.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/lib64/charset.alias", O_RDONLY|O_NOFOLLOW) = -1 ENOENT (No
such file or directory)
write(2, "cp: ", 4cp: )                     = 4
write(2, "failed to clone \342\200\230/mnt/f23w-roo"..., 180failed to
clone 
‘/mnt/f23w-root/var/lib/libvirt/images/Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2’
from ‘/mnt/home/chris/Downloads/Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2’)
= 180
open("/usr/share/locale/en_US.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) =
-1 ENOENT (No such file or directory)
open("/usr/share/locale/en_US.utf8/LC_MESSAGES/libc.mo", O_RDONLY) =
-1 ENOENT (No such file or directory)
open("/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale/en.UTF-8/LC_MESSAGES/libc.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale/en.utf8/LC_MESSAGES/libc.mo", O_RDONLY) = -1
ENOENT (No such file or directory)
open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT
(No such file or directory)
write(2, ": Invalid argument", 18: Invalid argument)      = 18
write(2, "\n", 1
)                       = 1
close(4)                                = 0
close(3)                                = 0
lseek(0, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
close(0)                                = 0
close(1)                                = 0
close(2)                                = 0
exit_group(1)                           = ?
+++ exited with 1 +++


conversely, relative command within subvolume works OK
ls -l
total 211520
-rw-rw-r--. 1 chris chris 216596480 Mar 22 19:22
Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2
[chris@f23m Downloads]$ cp --reflink
Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2 copy2
[chris@f23m Downloads]$ ls -l
total 423040
-rw-rw-r--. 1 chris chris 216596480 Mar 22 19:56 copy2
-rw-rw-r--. 1 chris chris 216596480 Mar 22 19:22
Fedora-Cloud-Base-24_Alpha-7.x86_64.qcow2


-- 
Chris Murphy
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to