Less code means less bugs so add a knob to skip the compat stuff. 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 Changes in v7: - add back __ARCH_WANT_SYS_LLSEEK to fix build with llseek - remove leftover hunk - add review tags Changes in v8: - consolidate valid_user_sp to fix it in the split callchain.c - fix build errors/warnings with PPC64 !COMPAT and PPC32 Changes in v9: - remove current_is_64bit() Chanegs in v10: - rebase, sent together with the syscall cleanup Changes in v11: - rebase - add MAINTAINERS pattern for ppc perf Changes in v12: - simplify valid_user_sp and change to invalid_user_sp - remove superfluous perf patterns in MAINTAINERS Michal Suchanek (8): powerpc: Add back __ARCH_WANT_SYS_LLSEEK macro powerpc: move common register copy functions from signal_32.c to signal.c powerpc/perf: consolidate read_user_stack_32 powerpc/perf: consolidate valid_user_sp -> invalid_user_sp 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 MAINTAINERS: perf: Add pattern that matches ppc perf to the perf entry. MAINTAINERS | 6 +- arch/powerpc/Kconfig | 5 +- arch/powerpc/include/asm/thread_info.h | 4 +- arch/powerpc/include/asm/unistd.h | 1 + arch/powerpc/kernel/Makefile | 6 +- 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/vdso.c | 3 +- arch/powerpc/perf/Makefile | 5 +- arch/powerpc/perf/callchain.c | 356 +------------------------ arch/powerpc/perf/callchain.h | 19 ++ arch/powerpc/perf/callchain_32.c | 196 ++++++++++++++ arch/powerpc/perf/callchain_64.c | 174 ++++++++++++ fs/read_write.c | 3 +- 16 files changed, 556 insertions(+), 514 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.23.0