RE: [PATCH v2 09/13] csky, hexagon: fix broken sys_sync_file_range

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Arnd Bergmann <arnd@xxxxxxxxxx>
> Sent: Monday, June 24, 2024 11:37 AM
> To: linux-arch@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Cc: Arnd Bergmann <arnd@xxxxxxxx>; Thomas Bogendoerfer
> <tsbogend@xxxxxxxxxxxxxxxx>; linux-mips@xxxxxxxxxxxxxxx; Helge Deller
> <deller@xxxxxx>; linux-parisc@xxxxxxxxxxxxxxx; David S. Miller
> <davem@xxxxxxxxxxxxx>; Andreas Larsson <andreas@xxxxxxxxxxx>;
> sparclinux@xxxxxxxxxxxxxxx; Michael Ellerman <mpe@xxxxxxxxxxxxxx>; Nicholas
> Piggin <npiggin@xxxxxxxxx>; Christophe Leroy
> <christophe.leroy@xxxxxxxxxx>; Naveen N . Rao
> <naveen.n.rao@xxxxxxxxxxxxx>; linuxppc-dev@xxxxxxxxxxxxxxxx; Brian Cain
> <bcain@xxxxxxxxxxx>; linux-hexagon@xxxxxxxxxxxxxxx; Guo Ren
> <guoren@xxxxxxxxxx>; linux-csky@xxxxxxxxxxxxxxx; Heiko Carstens
> <hca@xxxxxxxxxxxxx>; linux-s390@xxxxxxxxxxxxxxx; Rich Felker
> <dalias@xxxxxxxx>; John Paul Adrian Glaubitz <glaubitz@xxxxxxxxxxxxxxxxxxx>;
> linux-sh@xxxxxxxxxxxxxxx; H. Peter Anvin <hpa@xxxxxxxxx>; Alexander Viro
> <viro@xxxxxxxxxxxxxxxxxx>; Christian Brauner <brauner@xxxxxxxxxx>; linux-
> fsdevel@xxxxxxxxxxxxxxx; libc-alpha@xxxxxxxxxxxxxx;
> musl@xxxxxxxxxxxxxxxxxx; stable@xxxxxxxxxxxxxxx
> Subject: [PATCH v2 09/13] csky, hexagon: fix broken sys_sync_file_range
> 
> WARNING: This email originated from outside of Qualcomm. Please be wary of
> any links or attachments, and do not enable macros.
> 
> From: Arnd Bergmann <arnd@xxxxxxxx>
> 
> Both of these architectures require u64 function arguments to be
> passed in even/odd pairs of registers or stack slots, which in case of
> sync_file_range would result in a seven-argument system call that is
> not currently possible. The system call is therefore incompatible with
> all existing binaries.
> 
> While it would be possible to implement support for seven arguments
> like on mips, it seems better to use a six-argument version, either
> with the normal argument order but misaligned as on most architectures
> or with the reordered sync_file_range2() calling conventions as on
> arm and powerpc.
> 
> Cc: stable@xxxxxxxxxxxxxxx
> Acked-by: Guo Ren <guoren@xxxxxxxxxx>
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> ---
>  arch/csky/include/uapi/asm/unistd.h    | 1 +
>  arch/hexagon/include/uapi/asm/unistd.h | 1 +
>  2 files changed, 2 insertions(+)
> 
> diff --git a/arch/csky/include/uapi/asm/unistd.h
> b/arch/csky/include/uapi/asm/unistd.h
> index 7ff6a2466af1..e0594b6370a6 100644
> --- a/arch/csky/include/uapi/asm/unistd.h
> +++ b/arch/csky/include/uapi/asm/unistd.h
> @@ -6,6 +6,7 @@
>  #define __ARCH_WANT_SYS_CLONE3
>  #define __ARCH_WANT_SET_GET_RLIMIT
>  #define __ARCH_WANT_TIME32_SYSCALLS
> +#define __ARCH_WANT_SYNC_FILE_RANGE2
>  #include <asm-generic/unistd.h>
> 
>  #define __NR_set_thread_area   (__NR_arch_specific_syscall + 0)
> diff --git a/arch/hexagon/include/uapi/asm/unistd.h
> b/arch/hexagon/include/uapi/asm/unistd.h
> index 432c4db1b623..21ae22306b5d 100644
> --- a/arch/hexagon/include/uapi/asm/unistd.h
> +++ b/arch/hexagon/include/uapi/asm/unistd.h
> @@ -36,5 +36,6 @@
>  #define __ARCH_WANT_SYS_VFORK
>  #define __ARCH_WANT_SYS_FORK
>  #define __ARCH_WANT_TIME32_SYSCALLS
> +#define __ARCH_WANT_SYNC_FILE_RANGE2

Acked-by: Brian Cain <bcain@xxxxxxxxxxx>

> 
>  #include <asm-generic/unistd.h>
> --
> 2.39.2






[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux