From: Yao Zi <zi...@disroot.org> Current definition yields a negative 32bits value, messing up hwprobe result when Zvfhmin extension presents. Replace it by using a 1ULL bit shift value as done in kernel upstream.
Link: https://github.com/torvalds/linux/commit/5ea6764d9095e234b024054f75ebbccc4f0eb146 Fixes: a3432cf227 ("linux-user/riscv: Sync hwprobe keys with Linux") Cc: qemu-sta...@nongnu.org Signed-off-by: Yao Zi <zi...@disroot.org> Message-ID: <20241022160136.21714-2-zi...@disroot.org> Reviewed-by: Richard Henderson <richard.hender...@linaro.org> Signed-off-by: Richard Henderson <richard.hender...@linaro.org> (cherry picked from commit 310df7a9fe400f32cde8a7edf80daad12cd9cf02) Signed-off-by: Michael Tokarev <m...@tls.msk.ru> diff --git a/linux-user/syscall.c b/linux-user/syscall.c index 6d9ed59594..ad8e786aac 100644 --- a/linux-user/syscall.c +++ b/linux-user/syscall.c @@ -8855,7 +8855,7 @@ static int do_getdents64(abi_long dirfd, abi_long arg2, abi_long count) #define RISCV_HWPROBE_EXT_ZFHMIN (1 << 28) #define RISCV_HWPROBE_EXT_ZIHINTNTL (1 << 29) #define RISCV_HWPROBE_EXT_ZVFH (1 << 30) -#define RISCV_HWPROBE_EXT_ZVFHMIN (1 << 31) +#define RISCV_HWPROBE_EXT_ZVFHMIN (1ULL << 31) #define RISCV_HWPROBE_EXT_ZFA (1ULL << 32) #define RISCV_HWPROBE_EXT_ZTSO (1ULL << 33) #define RISCV_HWPROBE_EXT_ZACAS (1ULL << 34) -- 2.39.5