[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v2 3/4] linux-user: Add support for FIFREEZE and FITHAW ioctl
From: |
Laurent Vivier |
Subject: |
Re: [PATCH v2 3/4] linux-user: Add support for FIFREEZE and FITHAW ioctls |
Date: |
Tue, 18 Feb 2020 22:13:02 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 |
Le 24/01/2020 à 16:47, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <address@hidden>
>
> Both FIFREEZE and FITHAW ioctls accept an integer as their third
> argument.
>
> All ioctls in this group (FI* ioctl) are guarded with "#ifdef", so the
> guards are used in this implementation too for consistency (however,
> many of ioctls in FI* group became old enough that their #ifdef guards
> could be removed, bit this is out of the scope of this patch).
They have been added in v2.6.29
Could you add this information coming from the kernel commit adding them:
o Freeze the filesystem
int ioctl(int fd, int FIFREEZE, arg)
fd: The file descriptor of the mountpoint
FIFREEZE: request code for the freeze
arg: Ignored
Return value: 0 if the operation succeeds. Otherwise, -1
o Unfreeze the filesystem
int ioctl(int fd, int FITHAW, arg)
fd: The file descriptor of the mountpoint
FITHAW: request code for unfreeze
arg: Ignored
Return value: 0 if the operation succeeds. Otherwise, -1
Error number: If the filesystem has already been unfrozen,
errno is set to EINVAL.
> Reviewed-by: Laurent Vivier <address@hidden>
> Signed-off-by: Aleksandar Markovic <address@hidden>
> ---
> linux-user/ioctls.h | 6 ++++++
> linux-user/syscall_defs.h | 4 ++++
> 2 files changed, 10 insertions(+)
>
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index 944fbeb..adc07ad 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -152,6 +152,12 @@
> #ifdef FIBMAP
> IOCTL(FIBMAP, IOC_W | IOC_R, MK_PTR(TYPE_LONG))
> #endif
> +#ifdef FIFREEZE
> + IOCTL(FIFREEZE, IOC_W | IOC_R, TYPE_INT)
> +#endif
> +#ifdef FITHAW
> + IOCTL(FITHAW, IOC_W | IOC_R, TYPE_INT)
> +#endif
> #ifdef FITRIM
> IOCTL(FITRIM, IOC_W | IOC_R, MK_PTR(MK_STRUCT(STRUCT_fstrim_range)))
> #endif
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 8761841..ae4c048 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -950,7 +950,11 @@ struct target_rtc_pll_info {
> #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_FIFREEZE TARGET_IOWR('X', 119, int) /* Freeze */
> +#define TARGET_FITHAW TARGET_IOWR('X', 120, int) /* Thaw */
> +#ifdef FITRIM
> #define TARGET_FITRIM TARGET_IOWR('X', 121, struct fstrim_range)
> +#endif
move "#ifdef FITRIM" to previous patch.
> #define TARGET_FICLONE TARGET_IOW(0x94, 9, int)
> #define TARGET_FICLONERANGE TARGET_IOW(0x94, 13, struct file_clone_range)
>
>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: [PATCH v2 3/4] linux-user: Add support for FIFREEZE and FITHAW ioctls,
Laurent Vivier <=