Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753862AbbBMReR (ORCPT ); Fri, 13 Feb 2015 12:34:17 -0500 Received: from pandora.arm.linux.org.uk ([78.32.30.218]:39437 "EHLO pandora.arm.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753795AbbBMReO (ORCPT ); Fri, 13 Feb 2015 12:34:14 -0500 Date: Fri, 13 Feb 2015 17:32:44 +0000 From: Russell King - ARM Linux To: Wang Nan Cc: tglx@linutronix.de, mingo@redhat.com, hpa@zytor.com, rostedt@goodmis.org, ananth@in.ibm.com, anil.s.keshavamurthy@intel.com, davem@davemloft.net, masami.hiramatsu.pt@hitachi.com, luto@amacapital.net, keescook@chromium.org, oleg@redhat.com, dave.long@linaro.org, tixy@linaro.org, nico@linaro.org, yalin.wang2010@gmail.com, catalin.marinas@arm.com, Yalin.Wang@sonymobile.com, mark.rutland@arm.com, dave.hansen@linux.intel.com, jkenisto@us.ibm.com, anton@samba.org, stefani@seibold.net, JBeulich@suse.com, akpm@linux-foundation.org, rusty@rustcorp.com.au, peterz@infradead.org, prarit@redhat.com, fabf@skynet.be, hannes@cmpxchg.org, x86@kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, lizefan@huawei.com Subject: Re: [RFC PATCH v2 14/26] early kprobes: ARM: introduce early kprobes related code area. Message-ID: <20150213173244.GE8656@n2100.arm.linux.org.uk> References: <1423743476-11927-1-git-send-email-wangnan0@huawei.com> <1423743635-12629-1-git-send-email-wangnan0@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1423743635-12629-1-git-send-email-wangnan0@huawei.com> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2113 Lines: 57 On Thu, Feb 12, 2015 at 08:20:35PM +0800, Wang Nan wrote: > In arm's vmlinux.lds, introduces code area inside text section. > Executable area used by early kprobes will be allocated from there. > > Signed-off-by: Wang Nan > --- > arch/arm/include/asm/kprobes.h | 31 +++++++++++++++++++++++++++++-- > arch/arm/kernel/vmlinux.lds.S | 2 ++ > 2 files changed, 31 insertions(+), 2 deletions(-) > > diff --git a/arch/arm/include/asm/kprobes.h b/arch/arm/include/asm/kprobes.h > index 3ea9be5..0a4421e 100644 > --- a/arch/arm/include/asm/kprobes.h > +++ b/arch/arm/include/asm/kprobes.h > @@ -17,16 +17,42 @@ > #define _ARM_KPROBES_H > > #include > -#include > -#include > > #define __ARCH_WANT_KPROBES_INSN_SLOT > #define MAX_INSN_SIZE 2 > > +#ifdef __ASSEMBLY__ > + > +#define KPROBE_OPCODE_SIZE 4 > +#define MAX_OPTINSN_SIZE (optprobe_template_end - optprobe_template_entry) > + > +#ifdef CONFIG_EARLY_KPROBES > +#define EARLY_KPROBES_CODES_AREA \ > + . = ALIGN(8); \ > + VMLINUX_SYMBOL(__early_kprobes_start) = .; \ > + VMLINUX_SYMBOL(__early_kprobes_code_area_start) = .; \ > + . = . + MAX_OPTINSN_SIZE * CONFIG_NR_EARLY_KPROBES_SLOTS; \ > + VMLINUX_SYMBOL(__early_kprobes_code_area_end) = .; \ > + . = ALIGN(8); \ > + VMLINUX_SYMBOL(__early_kprobes_insn_slot_start) = .; \ > + . = . + MAX_INSN_SIZE * KPROBE_OPCODE_SIZE * CONFIG_NR_EARLY_KPROBES_SLOTS;\ > + VMLINUX_SYMBOL(__early_kprobes_insn_slot_end) = .; \ > + VMLINUX_SYMBOL(__early_kprobes_end) = .; > + > +#else > +#define EARLY_KPROBES_CODES_AREA > +#endif Please don't spread vmlinux specific stuff around the kernel include files. Let's try to keep it contained to a minimal set of files. -- FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up according to speedtest.net. -- 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/