[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v5 09/20] linux-user: Add support for FS_IOC_<GET|SET>VERSION
From: |
Laurent Vivier |
Subject: |
Re: [PATCH v5 09/20] linux-user: Add support for FS_IOC_<GET|SET>VERSION ioctls |
Date: |
Tue, 14 Jan 2020 15:21:27 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.3.1 |
Le 13/01/2020 à 21:34, Aleksandar Markovic a écrit :
> From: Aleksandar Markovic <address@hidden>
>
> A very specific thing for these two ioctls is that their code
> implies that their third argument is of type 'long', but the
> kernel uses that argument as if it is of type 'int'. This anomaly
> is recognized also in commit 6080723 (linux-user: Implement
> FS_IOC_GETFLAGS and FS_IOC_SETFLAGS ioctls).
>
> Signed-off-by: Aleksandar Markovic <address@hidden>
> ---
> linux-user/ioctls.h | 2 ++
> linux-user/syscall_defs.h | 8 +++++---
> 2 files changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/linux-user/ioctls.h b/linux-user/ioctls.h
> index c6b9d6a..c44f42e 100644
> --- a/linux-user/ioctls.h
> +++ b/linux-user/ioctls.h
> @@ -138,6 +138,8 @@
>
> IOCTL(FS_IOC_GETFLAGS, IOC_R, MK_PTR(TYPE_INT))
> IOCTL(FS_IOC_SETFLAGS, IOC_W, MK_PTR(TYPE_INT))
> + IOCTL(FS_IOC_GETVERSION, IOC_R, MK_PTR(TYPE_INT))
> + IOCTL(FS_IOC_SETVERSION, IOC_W, MK_PTR(TYPE_INT))
>
> #ifdef CONFIG_USBFS
> /* USB ioctls */
> diff --git a/linux-user/syscall_defs.h b/linux-user/syscall_defs.h
> index 98c2119..f68a8b6 100644
> --- a/linux-user/syscall_defs.h
> +++ b/linux-user/syscall_defs.h
> @@ -911,12 +911,14 @@ struct target_pollfd {
> #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".
> +/*
> + * Note that the ioctl numbers for FS_IOC_<GET|SET><FLAGS|VERSION>
> + * claim type "long" but the actual type used by the kernel is "int".
> */
> #define TARGET_FS_IOC_GETFLAGS TARGET_IOR('f', 1, abi_long)
> #define TARGET_FS_IOC_SETFLAGS TARGET_IOW('f', 2, abi_long)
> -
> +#define TARGET_FS_IOC_GETVERSION TARGET_IOR('v', 1, abi_long)
> +#define TARGET_FS_IOC_SETVERSION TARGET_IOW('v', 2, abi_long)
> #define TARGET_FS_IOC_FIEMAP TARGET_IOWR('f',11,struct fiemap)
>
> /* usb ioctls */
>
Reviewed-by: Laurent Vivier <address@hidden>
- [PATCH v5 03/20] linux-user: m68k: Update syscall numbers to kernel 5.5 rc3 level, (continued)
- [PATCH v5 03/20] linux-user: m68k: Update syscall numbers to kernel 5.5 rc3 level, Aleksandar Markovic, 2020/01/13
- [PATCH v5 06/20] linux-user: x86_64: Update syscall numbers to kernel 5.5 rc3 level, Aleksandar Markovic, 2020/01/13
- [PATCH v5 07/20] linux-user: xtensa: Update syscall numbers to kernel 5.5 rc3 level, Aleksandar Markovic, 2020/01/13
- [PATCH v5 01/20] linux-user: Fix some constants in termbits.h, Aleksandar Markovic, 2020/01/13
- [PATCH v5 02/20] linux-user: alpha: Update syscall numbers to kernel 5.5 rc3 level, Aleksandar Markovic, 2020/01/13
- [PATCH v5 08/20] linux-user: xtensa: Remove unused constant TARGET_NR_syscall_count, Aleksandar Markovic, 2020/01/13
- [PATCH v5 10/20] linux-user: Add support for FS_IOC32_<GET|SET>FLAGS ioctls, Aleksandar Markovic, 2020/01/13
- [PATCH v5 09/20] linux-user: Add support for FS_IOC_<GET|SET>VERSION ioctls, Aleksandar Markovic, 2020/01/13
- Re: [PATCH v5 09/20] linux-user: Add support for FS_IOC_<GET|SET>VERSION ioctls,
Laurent Vivier <=
- [PATCH v5 12/20] linux-user: Add support for FS_IOC_FS<GET|SET>XATTR ioctls, Aleksandar Markovic, 2020/01/13
- [PATCH v5 11/20] linux-user: Add support for FS_IOC32_<GET|SET>VERSION ioctls, Aleksandar Markovic, 2020/01/13
- [PATCH v5 14/20] linux-user: Add support for FIFREEZE and FITHAW ioctls, Aleksandar Markovic, 2020/01/13
- [PATCH v5 13/20] linux-user: Add support for FITRIM ioctl, Aleksandar Markovic, 2020/01/13
- [PATCH v5 15/20] linux-user: Add support for FD<SETEMSGTRESH|SETMAXERRS|GETMAXERRS> ioctls, Aleksandar Markovic, 2020/01/13