Commit 5b89492c authored by Christophe Leroy's avatar Christophe Leroy Committed by Michael Ellerman

powerpc: Finalise cleanup around ABI use

Now that we have CONFIG_PPC64_ELF_ABI_V1 and CONFIG_PPC64_ELF_ABI_V2,
get rid of all indirect detection of ABI version.
Signed-off-by: default avatarChristophe Leroy <christophe.leroy@csgroup.eu>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/709d9d69523c14c8a9fba4486395dca0f2d675b1.1652074503.git.christophe.leroy@csgroup.eu
parent 7d40aff8
...@@ -208,7 +208,7 @@ config PPC ...@@ -208,7 +208,7 @@ config PPC
select HAVE_EFFICIENT_UNALIGNED_ACCESS if !(CPU_LITTLE_ENDIAN && POWER7_CPU) select HAVE_EFFICIENT_UNALIGNED_ACCESS if !(CPU_LITTLE_ENDIAN && POWER7_CPU)
select HAVE_FAST_GUP select HAVE_FAST_GUP
select HAVE_FTRACE_MCOUNT_RECORD select HAVE_FTRACE_MCOUNT_RECORD
select HAVE_FUNCTION_DESCRIPTORS if PPC64 && !CPU_LITTLE_ENDIAN select HAVE_FUNCTION_DESCRIPTORS if PPC64_ELF_ABI_V1
select HAVE_FUNCTION_ERROR_INJECTION select HAVE_FUNCTION_ERROR_INJECTION
select HAVE_FUNCTION_GRAPH_TRACER select HAVE_FUNCTION_GRAPH_TRACER
select HAVE_FUNCTION_TRACER select HAVE_FUNCTION_TRACER
......
...@@ -213,7 +213,7 @@ CHECKFLAGS += -m$(BITS) -D__powerpc__ -D__powerpc$(BITS)__ ...@@ -213,7 +213,7 @@ CHECKFLAGS += -m$(BITS) -D__powerpc__ -D__powerpc$(BITS)__
ifdef CONFIG_CPU_BIG_ENDIAN ifdef CONFIG_CPU_BIG_ENDIAN
CHECKFLAGS += -D__BIG_ENDIAN__ CHECKFLAGS += -D__BIG_ENDIAN__
else else
CHECKFLAGS += -D__LITTLE_ENDIAN__ -D_CALL_ELF=2 CHECKFLAGS += -D__LITTLE_ENDIAN__
endif endif
ifdef CONFIG_476FPE_ERR46 ifdef CONFIG_476FPE_ERR46
......
...@@ -11,14 +11,6 @@ ...@@ -11,14 +11,6 @@
#include <uapi/asm/types.h> #include <uapi/asm/types.h>
#ifdef __powerpc64__
#if defined(_CALL_ELF) && _CALL_ELF == 2
#define PPC64_ELF_ABI_v2 1
#else
#define PPC64_ELF_ABI_v1 1
#endif
#endif /* __powerpc64__ */
#ifndef __ASSEMBLY__ #ifndef __ASSEMBLY__
typedef __vector128 vector128; typedef __vector128 vector128;
......
...@@ -978,11 +978,14 @@ static int fadump_init_elfcore_header(char *bufp) ...@@ -978,11 +978,14 @@ static int fadump_init_elfcore_header(char *bufp)
elf->e_entry = 0; elf->e_entry = 0;
elf->e_phoff = sizeof(struct elfhdr); elf->e_phoff = sizeof(struct elfhdr);
elf->e_shoff = 0; elf->e_shoff = 0;
#if defined(_CALL_ELF)
elf->e_flags = _CALL_ELF; if (IS_ENABLED(CONFIG_PPC64_ELF_ABI_V2))
#else elf->e_flags = 2;
elf->e_flags = 0; else if (IS_ENABLED(CONFIG_PPC64_ELF_ABI_V1))
#endif elf->e_flags = 1;
else
elf->e_flags = 0;
elf->e_ehsize = sizeof(struct elfhdr); elf->e_ehsize = sizeof(struct elfhdr);
elf->e_phentsize = sizeof(struct elf_phdr); elf->e_phentsize = sizeof(struct elf_phdr);
elf->e_phnum = 0; elf->e_phnum = 0;
......
...@@ -444,10 +444,4 @@ void __init pt_regs_check(void) ...@@ -444,10 +444,4 @@ void __init pt_regs_check(void)
* real registers. * real registers.
*/ */
BUILD_BUG_ON(PT_DSCR < sizeof(struct user_pt_regs) / sizeof(unsigned long)); BUILD_BUG_ON(PT_DSCR < sizeof(struct user_pt_regs) / sizeof(unsigned long));
#ifdef CONFIG_PPC64_ELF_ABI_V1
BUILD_BUG_ON(!IS_ENABLED(CONFIG_HAVE_FUNCTION_DESCRIPTORS));
#else
BUILD_BUG_ON(IS_ENABLED(CONFIG_HAVE_FUNCTION_DESCRIPTORS));
#endif
} }
...@@ -126,7 +126,7 @@ void bpf_jit_build_prologue(u32 *image, struct codegen_context *ctx) ...@@ -126,7 +126,7 @@ void bpf_jit_build_prologue(u32 *image, struct codegen_context *ctx)
{ {
int i; int i;
if (__is_defined(CONFIG_PPC64_ELF_ABI_V2)) if (IS_ENABLED(CONFIG_PPC64_ELF_ABI_V2))
EMIT(PPC_RAW_LD(_R2, _R13, offsetof(struct paca_struct, kernel_toc))); EMIT(PPC_RAW_LD(_R2, _R13, offsetof(struct paca_struct, kernel_toc)));
/* /*
...@@ -266,7 +266,7 @@ static int bpf_jit_emit_tail_call(u32 *image, struct codegen_context *ctx, u32 o ...@@ -266,7 +266,7 @@ static int bpf_jit_emit_tail_call(u32 *image, struct codegen_context *ctx, u32 o
int b2p_index = bpf_to_ppc(BPF_REG_3); int b2p_index = bpf_to_ppc(BPF_REG_3);
int bpf_tailcall_prologue_size = 8; int bpf_tailcall_prologue_size = 8;
if (__is_defined(CONFIG_PPC64_ELF_ABI_V2)) if (IS_ENABLED(CONFIG_PPC64_ELF_ABI_V2))
bpf_tailcall_prologue_size += 4; /* skip past the toc load */ bpf_tailcall_prologue_size += 4; /* skip past the toc load */
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment