X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=arch%2Farch.h;h=30c0d2056d3eaa7abcffd5cd703f698d99790edd;hb=1b5e13beb3acc2a08321ce687727e2cbbb3b954f;hp=4ad49a42b74f0c5b08e4f245f49571ea0b96fc5e;hpb=cca84643cc10cd72b0b453ff92ccb8643ba51493;p=fio.git diff --git a/arch/arch.h b/arch/arch.h index 4ad49a42..30c0d205 100644 --- a/arch/arch.h +++ b/arch/arch.h @@ -1,15 +1,11 @@ #ifndef ARCH_H #define ARCH_H -#ifdef __WORDSIZE -#define BITS_PER_LONG __WORDSIZE -#else -#define BITS_PER_LONG 32 -#endif +#include "../lib/types.h" enum { arch_x86_64 = 1, - arch_i386, + arch_x86, arch_ppc, arch_ia64, arch_s390, @@ -19,6 +15,8 @@ enum { arch_arm, arch_sh, arch_hppa, + arch_mips, + arch_aarch64, arch_generic, @@ -32,6 +30,11 @@ enum { ARCH_FLAG_4 = 1 << 3, }; +extern unsigned long arch_flags; + +#define ARCH_CPU_CLOCK_WRAPS + +/* IWYU pragma: begin_exports */ #if defined(__i386__) #include "arch-x86.h" #elif defined(__x86_64__) @@ -56,16 +59,15 @@ enum { #include "arch-sh.h" #elif defined(__hppa__) #include "arch-hppa.h" +#elif defined(__aarch64__) +#include "arch-aarch64.h" #else #warning "Unknown architecture, attempting to use generic model." #include "arch-generic.h" #endif -#ifdef ARCH_HAVE_FFZ -#define ffz(bitmask) arch_ffz(bitmask) -#else #include "../lib/ffz.h" -#endif +/* IWYU pragma: end_exports */ #ifndef ARCH_HAVE_INIT static inline int arch_init(char *envp[]) @@ -74,4 +76,32 @@ static inline int arch_init(char *envp[]) } #endif +#ifdef __alpha__ +/* + * alpha is the only exception, all other architectures + * have common numbers for new system calls. + */ +# ifndef __NR_io_uring_setup +# define __NR_io_uring_setup 535 +# endif +# ifndef __NR_io_uring_enter +# define __NR_io_uring_enter 536 +# endif +# ifndef __NR_io_uring_register +# define __NR_io_uring_register 537 +# endif +#else /* !__alpha__ */ +# ifndef __NR_io_uring_setup +# define __NR_io_uring_setup 425 +# endif +# ifndef __NR_io_uring_enter +# define __NR_io_uring_enter 426 +# endif +# ifndef __NR_io_uring_register +# define __NR_io_uring_register 427 +# endif +#endif + +#define ARCH_HAVE_IOURING + #endif