diff options
author | Leonardo Bras <leobras@redhat.com> | 2024-01-03 19:00:23 +0300 |
---|---|---|
committer | Palmer Dabbelt <palmer@rivosinc.com> | 2024-03-20 02:39:40 +0300 |
commit | 2a8986fc5e1cb686dd3aae3022459aea23b9823a (patch) | |
tree | a416d98376eef7d0a3504ae7ac63b99c5966a4b5 /arch/riscv/include/asm/elf.h | |
parent | 5917ea17ad07f35bb5be4fd5fdcd408f090e347b (diff) | |
download | linux-2a8986fc5e1cb686dd3aae3022459aea23b9823a.tar.xz |
riscv: Introduce set_compat_task() in asm/compat.h
In order to have all task compat bit access directly in compat.h, introduce
set_compat_task() to set/reset those when needed.
Also, since it's only used on an if/else scenario, simplify the macro using
it.
Signed-off-by: Leonardo Bras <leobras@redhat.com>
Reviewed-by: Guo Ren <guoren@kernel.org>
Link: https://lore.kernel.org/r/20240103160024.70305-7-leobras@redhat.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
Diffstat (limited to 'arch/riscv/include/asm/elf.h')
-rw-r--r-- | arch/riscv/include/asm/elf.h | 5 |
1 files changed, 1 insertions, 4 deletions
diff --git a/arch/riscv/include/asm/elf.h b/arch/riscv/include/asm/elf.h index 2e88257cafae..c7aea7886d22 100644 --- a/arch/riscv/include/asm/elf.h +++ b/arch/riscv/include/asm/elf.h @@ -135,10 +135,7 @@ do { \ #ifdef CONFIG_COMPAT #define SET_PERSONALITY(ex) \ -do { if ((ex).e_ident[EI_CLASS] == ELFCLASS32) \ - set_thread_flag(TIF_32BIT); \ - else \ - clear_thread_flag(TIF_32BIT); \ +do { set_compat_task((ex).e_ident[EI_CLASS] == ELFCLASS32); \ if (personality(current->personality) != PER_LINUX32) \ set_personality(PER_LINUX | \ (current->personality & (~PER_MASK))); \ |