X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fimport%2Fqcow2-util.c;h=9b0c23bb1476148af0a5386a0367b2f692bcfb45;hb=1433efd219a6df414a1821b3d3d70d86201ed3e4;hp=c84c6aa0d72b20948df62f4c1ec4a38cd1af0235;hpb=edce2aed3aa93b84f7b4c70412bdb665da2977b0;p=elogind.git diff --git a/src/import/qcow2-util.c b/src/import/qcow2-util.c index c84c6aa0d..9b0c23bb1 100644 --- a/src/import/qcow2-util.c +++ b/src/import/qcow2-util.c @@ -24,6 +24,7 @@ #include "util.h" #include "sparse-endian.h" #include "qcow2-util.h" +#include "btrfs-util.h" #define QCOW2_MAGIC 0x514649fb @@ -85,6 +86,11 @@ static int copy_cluster( void *buffer) { ssize_t l; + int r; + + r = btrfs_clone_range(sfd, soffset, dfd, doffset, cluster_size); + if (r >= 0) + return r; l = pread(sfd, buffer, cluster_size, soffset); if (l < 0)