Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753310AbbLDPYX (ORCPT ); Fri, 4 Dec 2015 10:24:23 -0500 Received: from verein.lst.de ([213.95.11.211]:39595 "EHLO newverein.lst.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751185AbbLDPYV (ORCPT ); Fri, 4 Dec 2015 10:24:21 -0500 From: Torsten Duwe Date: Fri, 4 Dec 2015 15:45:29 +0100 Subject: [PATCH v5 0/9] ftrace with regs + live patching for ppc64 LE (ABI v2) To: Steven Rostedt , Michael Ellerman Cc: Jiri Kosina , Denis Kirjanov , Petr Mladek , linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, live-patching@vger.kernel.org Message-Id: <20151204152419.28E0D691D2@newverein.lst.de> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2637 Lines: 64 Changes since v4: * change comment style in entry_64.S to C89 (nobody is using assembler syntax comments there). * the bool function restore_r2 shouldn't return 2, that's a little confusing. * Test whether the compiler supports -mprofile-kernel and only then define CC_USING_MPROFILE_KERNEL * also make the return value of klp_check_compiler_support depend on that. Major changes since v3: * the graph tracer works now. It turned out the stack frame it tried to manipulate does not exist at that point. * changes only needed in order to support -mprofile-kernel are now in a separate patch, prepended. * Kconfig cleanup so this is only selectable on ppc64le. Torsten Duwe (9): ppc64 (le): prepare for -mprofile-kernel ppc64le FTRACE_WITH_REGS implementation ppc use ftrace_modify_all_code default ppc64 ftrace_with_regs configuration variables ppc64 ftrace_with_regs: spare early boot and low level ppc64 ftrace: disable profiling for some functions ppc64 ftrace: disable profiling for some files Implement kernel live patching for ppc64le (ABIv2) Enable LIVEPATCH to be configured on ppc64le and add livepatch.o if it is selected. arch/powerpc/Kconfig | 7 ++ arch/powerpc/Makefile | 10 +++ arch/powerpc/include/asm/ftrace.h | 5 ++ arch/powerpc/include/asm/livepatch.h | 45 ++++++++++ arch/powerpc/kernel/Makefile | 13 +-- arch/powerpc/kernel/entry_64.S | 164 ++++++++++++++++++++++++++++++++++- arch/powerpc/kernel/ftrace.c | 88 ++++++++++++++----- arch/powerpc/kernel/livepatch.c | 38 ++++++++ arch/powerpc/kernel/module_64.c | 38 +++++++- arch/powerpc/kernel/process.c | 2 +- arch/powerpc/lib/Makefile | 4 +- arch/powerpc/mm/fault.c | 2 +- arch/powerpc/mm/hash_utils_64.c | 18 ++-- arch/powerpc/mm/hugetlbpage-hash64.c | 2 +- arch/powerpc/mm/hugetlbpage.c | 4 +- arch/powerpc/mm/mem.c | 2 +- arch/powerpc/mm/pgtable_64.c | 2 +- arch/powerpc/mm/slb.c | 6 +- arch/powerpc/mm/slice.c | 8 +- kernel/trace/Kconfig | 5 ++ 20 files changed, 409 insertions(+), 54 deletions(-) create mode 100644 arch/powerpc/include/asm/livepatch.h create mode 100644 arch/powerpc/kernel/livepatch.c -- 1.8.5.6 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/