Less code means less bugs so add a knob to skip the compat stuff. This is tested on ppc64le top of
https://patchwork.ozlabs.org/cover/1153556/ Changes in v2: saner CONFIG_COMPAT ifdefs Changes in v3: - change llseek to 32bit instead of builing it unconditionally in fs - clanup the makefile conditionals - remove some ifdefs or convert to IS_DEFINED where possible Changes in v4: - cleanup is_32bit_task and current_is_64bit - more makefile cleanup Changes in v5: - more current_is_64bit cleanup - split off callchain.c 32bit and 64bit parts Changes in v6: - cleanup makefile after split - consolidate read_user_stack_32 - fix some checkpatch warnings Michal Suchanek (6): powerpc: make llseek 32bit-only. powerpc: move common register copy functions from signal_32.c to signal.c powerpc/perf: consolidate read_user_stack_32 powerpc/64: make buildable without CONFIG_COMPAT powerpc/64: Make COMPAT user-selectable disabled on littleendian by default. powerpc/perf: split callchain.c by bitness arch/powerpc/Kconfig | 5 +- arch/powerpc/include/asm/thread_info.h | 4 +- arch/powerpc/kernel/Makefile | 7 +- arch/powerpc/kernel/entry_64.S | 2 + arch/powerpc/kernel/signal.c | 144 ++++++++- arch/powerpc/kernel/signal_32.c | 140 --------- arch/powerpc/kernel/syscall_64.c | 6 +- arch/powerpc/kernel/syscalls/syscall.tbl | 2 +- arch/powerpc/kernel/vdso.c | 5 +- arch/powerpc/perf/Makefile | 5 +- arch/powerpc/perf/callchain.c | 377 +---------------------- arch/powerpc/perf/callchain.h | 11 + arch/powerpc/perf/callchain_32.c | 204 ++++++++++++ arch/powerpc/perf/callchain_64.c | 185 +++++++++++ 14 files changed, 564 insertions(+), 533 deletions(-) create mode 100644 arch/powerpc/perf/callchain.h create mode 100644 arch/powerpc/perf/callchain_32.c create mode 100644 arch/powerpc/perf/callchain_64.c -- 2.22.0