summaryrefslogtreecommitdiff
path: root/ioctl.h
diff options
context:
space:
mode:
authorMark Fasheh <mfasheh@suse.de>2013-01-30 14:50:23 -0800
committerDavid Sterba <dsterba@suse.cz>2013-02-12 23:46:15 +0100
commitfac5b559a784cd50ae355bddae1ca2a850e4d39a (patch)
tree45a1c8be47074d619fa86090aa57cdb6e52cfc12 /ioctl.h
parente43cc461550130494194201037590a2b1f0f6880 (diff)
btrfs-progs: Add support for BTRFS_SEND_FLAG_NO_FILE_DATA
The flag and command are synced from kernel to user. Also, this patch adds a callback for the BTRFS_SEND_C_UPDATE_EXTENT in struct btrfs_send_ops. read_and_process_cmd() is updated to decode BTRFS_SEND_C_UPDATE_EXTENT and send the values through the right callback. I did not add a callback definition to cmds-receive.c as that code never uses BTRFS_SEND_FLAG_NO_FILE_DATA. Signed-off-by: Mark Fasheh <mfasheh@suse.de>
Diffstat (limited to 'ioctl.h')
-rw-r--r--ioctl.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/ioctl.h b/ioctl.h
index d57afb2d..8c32a2a2 100644
--- a/ioctl.h
+++ b/ioctl.h
@@ -364,6 +364,13 @@ struct btrfs_ioctl_received_subvol_args {
__u64 reserved[16]; /* in */
};
+/*
+ * Caller doesn't want file data in the send stream, even if the
+ * search of clone sources doesn't find an extent. UPDATE_EXTENT
+ * commands will be sent instead of WRITE commands.
+ */
+#define BTRFS_SEND_FLAG_NO_FILE_DATA 0x1
+
struct btrfs_ioctl_send_args {
__s64 send_fd; /* in */
__u64 clone_sources_count; /* in */