[RFC PATCH V2 10/38] riscv: u64ilp32: Remove the restriction of UXL=32
guoren at kernel.org
guoren at kernel.org
Sat Nov 11 22:14:46 PST 2023
From: Guo Ren <guoren at linux.alibaba.com>
The u64ilp32 needn't hardware support UXL=32, so remove the
restriction when EF_RISCV_64ILP32 is detected.
Reported-by: Junqiang Wang <wangjunqiang at iscas.ac.cn>
Signed-off-by: Guo Ren <guoren at linux.alibaba.com>
Signed-off-by: Guo Ren <guoren at kernel.org>
---
arch/riscv/kernel/process.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/riscv/kernel/process.c b/arch/riscv/kernel/process.c
index e32d737e039f..93057ca2e2a7 100644
--- a/arch/riscv/kernel/process.c
+++ b/arch/riscv/kernel/process.c
@@ -88,7 +88,7 @@ static bool compat_mode_supported __read_mostly;
bool compat_elf_check_arch(Elf32_Ehdr *hdr)
{
- return compat_mode_supported &&
+ return (compat_mode_supported || (hdr->e_flags & EF_RISCV_64ILP32)) &&
hdr->e_machine == EM_RISCV &&
hdr->e_ident[EI_CLASS] == ELFCLASS32;
}
--
2.36.1
More information about the linux-riscv
mailing list