linux-user: Add FICLONE and FICLONERANGE ioctls
Add missing FICLONE and FICLONERANGE ioctls. Signed-off-by: Helge Deller <deller@gmx.de> Reviewed-by: Laurent Vivier <laurent@vivier.eu> Message-Id: <20170211222602.GA6399@ls3530.fritz.box> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
parent
1e06262da6
commit
21992cb679
@ -112,6 +112,11 @@
|
||||
#ifdef FIBMAP
|
||||
IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
|
||||
#endif
|
||||
#ifdef FICLONE
|
||||
IOCTL(FICLONE, IOC_W, TYPE_INT)
|
||||
IOCTL(FICLONERANGE, IOC_W, MK_PTR(MK_STRUCT(STRUCT_file_clone_range)))
|
||||
#endif
|
||||
|
||||
#ifdef FIGETBSZ
|
||||
IOCTL(FIGETBSZ, IOC_R, MK_PTR(TYPE_LONG))
|
||||
#endif
|
||||
|
@ -1086,6 +1086,10 @@ struct target_pollfd {
|
||||
|
||||
#define TARGET_FIBMAP TARGET_IO(0x00,1) /* bmap access */
|
||||
#define TARGET_FIGETBSZ TARGET_IO(0x00,2) /* get the block size used for bmap */
|
||||
|
||||
#define TARGET_FICLONE TARGET_IOW(0x94, 9, int)
|
||||
#define TARGET_FICLONERANGE TARGET_IOW(0x94, 13, struct file_clone_range)
|
||||
|
||||
/* Note that the ioctl numbers claim type "long" but the actual type
|
||||
* used by the kernel is "int".
|
||||
*/
|
||||
|
@ -232,6 +232,12 @@ STRUCT(dm_target_versions,
|
||||
STRUCT(dm_target_msg,
|
||||
TYPE_ULONGLONG) /* sector */
|
||||
|
||||
STRUCT(file_clone_range,
|
||||
TYPE_LONGLONG, /* src_fd */
|
||||
TYPE_ULONGLONG, /* src_offset */
|
||||
TYPE_ULONGLONG, /* src_length */
|
||||
TYPE_ULONGLONG) /* dest_offset */
|
||||
|
||||
STRUCT(fiemap_extent,
|
||||
TYPE_ULONGLONG, /* fe_logical */
|
||||
TYPE_ULONGLONG, /* fe_physical */
|
||||
|
Loading…
Reference in New Issue
Block a user