powerpc: Use is_32bit_task() helper to test 32-bit binary
This patch removes all explicit tests for the TIF_32BIT flag Signed-off-by: Denis Kirjanov <dkirjanov@kernel.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
05d77ac90c
commit
cab175f9fa
|
@ -143,7 +143,7 @@ static inline void __user *compat_alloc_user_space(long len)
|
|||
* We cant access below the stack pointer in the 32bit ABI and
|
||||
* can access 288 bytes in the 64bit ABI
|
||||
*/
|
||||
if (!(test_thread_flag(TIF_32BIT)))
|
||||
if (!is_32bit_task())
|
||||
usp -= 288;
|
||||
|
||||
return (void __user *) (usp - len);
|
||||
|
@ -213,7 +213,7 @@ struct compat_shmid64_ds {
|
|||
|
||||
static inline int is_compat_task(void)
|
||||
{
|
||||
return test_thread_flag(TIF_32BIT);
|
||||
return is_32bit_task();
|
||||
}
|
||||
|
||||
#endif /* __KERNEL__ */
|
||||
|
|
|
@ -250,7 +250,7 @@ do { \
|
|||
* the 64bit ABI has never had these issues dont enable the workaround
|
||||
* even if we have an executable stack.
|
||||
*/
|
||||
# define elf_read_implies_exec(ex, exec_stk) (test_thread_flag(TIF_32BIT) ? \
|
||||
# define elf_read_implies_exec(ex, exec_stk) (is_32bit_task() ? \
|
||||
(exec_stk == EXSTACK_DEFAULT) : 0)
|
||||
#else
|
||||
# define SET_PERSONALITY(ex) \
|
||||
|
|
|
@ -163,7 +163,7 @@ do { \
|
|||
#endif /* !CONFIG_HUGETLB_PAGE */
|
||||
|
||||
#define VM_DATA_DEFAULT_FLAGS \
|
||||
(test_thread_flag(TIF_32BIT) ? \
|
||||
(is_32bit_task() ? \
|
||||
VM_DATA_DEFAULT_FLAGS32 : VM_DATA_DEFAULT_FLAGS64)
|
||||
|
||||
/*
|
||||
|
@ -179,7 +179,7 @@ do { \
|
|||
VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC)
|
||||
|
||||
#define VM_STACK_DEFAULT_FLAGS \
|
||||
(test_thread_flag(TIF_32BIT) ? \
|
||||
(is_32bit_task() ? \
|
||||
VM_STACK_DEFAULT_FLAGS32 : VM_STACK_DEFAULT_FLAGS64)
|
||||
|
||||
#include <asm-generic/getorder.h>
|
||||
|
|
|
@ -118,7 +118,7 @@ extern struct task_struct *last_task_used_spe;
|
|||
#define TASK_UNMAPPED_BASE_USER32 (PAGE_ALIGN(TASK_SIZE_USER32 / 4))
|
||||
#define TASK_UNMAPPED_BASE_USER64 (PAGE_ALIGN(TASK_SIZE_USER64 / 4))
|
||||
|
||||
#define TASK_UNMAPPED_BASE ((test_thread_flag(TIF_32BIT)) ? \
|
||||
#define TASK_UNMAPPED_BASE ((is_32bit_task()) ? \
|
||||
TASK_UNMAPPED_BASE_USER32 : TASK_UNMAPPED_BASE_USER64 )
|
||||
#endif
|
||||
|
||||
|
@ -128,7 +128,7 @@ extern struct task_struct *last_task_used_spe;
|
|||
#define STACK_TOP_USER64 TASK_SIZE_USER64
|
||||
#define STACK_TOP_USER32 TASK_SIZE_USER32
|
||||
|
||||
#define STACK_TOP (test_thread_flag(TIF_32BIT) ? \
|
||||
#define STACK_TOP (is_32bit_task() ? \
|
||||
STACK_TOP_USER32 : STACK_TOP_USER64)
|
||||
|
||||
#define STACK_TOP_MAX STACK_TOP_USER64
|
||||
|
|
|
@ -1681,7 +1681,7 @@ long do_syscall_trace_enter(struct pt_regs *regs)
|
|||
|
||||
if (unlikely(current->audit_context)) {
|
||||
#ifdef CONFIG_PPC64
|
||||
if (!test_thread_flag(TIF_32BIT))
|
||||
if (!is_32bit_task())
|
||||
audit_syscall_entry(AUDIT_ARCH_PPC64,
|
||||
regs->gpr[0],
|
||||
regs->gpr[3], regs->gpr[4],
|
||||
|
|
|
@ -159,7 +159,7 @@ static void dump_vdso_pages(struct vm_area_struct * vma)
|
|||
{
|
||||
int i;
|
||||
|
||||
if (!vma || test_thread_flag(TIF_32BIT)) {
|
||||
if (!vma || is_32bit_task()) {
|
||||
printk("vDSO32 @ %016lx:\n", (unsigned long)vdso32_kbase);
|
||||
for (i=0; i<vdso32_pages; i++) {
|
||||
struct page *pg = virt_to_page(vdso32_kbase +
|
||||
|
@ -170,7 +170,7 @@ static void dump_vdso_pages(struct vm_area_struct * vma)
|
|||
dump_one_vdso_page(pg, upg);
|
||||
}
|
||||
}
|
||||
if (!vma || !test_thread_flag(TIF_32BIT)) {
|
||||
if (!vma || !is_32bit_task()) {
|
||||
printk("vDSO64 @ %016lx:\n", (unsigned long)vdso64_kbase);
|
||||
for (i=0; i<vdso64_pages; i++) {
|
||||
struct page *pg = virt_to_page(vdso64_kbase +
|
||||
|
@ -200,7 +200,7 @@ int arch_setup_additional_pages(struct linux_binprm *bprm, int uses_interp)
|
|||
return 0;
|
||||
|
||||
#ifdef CONFIG_PPC64
|
||||
if (test_thread_flag(TIF_32BIT)) {
|
||||
if (is_32bit_task()) {
|
||||
vdso_pagelist = vdso32_pagelist;
|
||||
vdso_pages = vdso32_pages;
|
||||
vdso_base = VDSO32_MBASE;
|
||||
|
|
|
@ -105,7 +105,7 @@ void op_powerpc_backtrace(struct pt_regs * const regs, unsigned int depth)
|
|||
}
|
||||
} else {
|
||||
#ifdef CONFIG_PPC64
|
||||
if (!test_thread_flag(TIF_32BIT)) {
|
||||
if (!is_32bit_task()) {
|
||||
while (depth--) {
|
||||
sp = user_getsp64(sp, first_frame);
|
||||
if (!sp)
|
||||
|
|
Loading…
Reference in New Issue