From: "Luis R. Rodriguez" <mcgrof@kernel.org> To: Nicholas Piggin <npiggin@gmail.com> Cc: mcgrof@kernel.org, hpa@zytor.com, tglx@linutronix.de, mingo@redhat.com, jpoimboe@redhat.com, bp@alien8.de, linux@arm.linux.org.uk, mhiramat@kernel.org, masami.hiramatsu.pt@hitachi.com, jbaron@akamai.com, heiko.carstens@de.ibm.com, ananth@linux.vnet.ibm.com, anil.s.keshavamurthy@intel.com, davem@davemloft.net, realmz6@gmail.com, x86@kernel.org, luto@amacapital.net, keescook@chromium.org, torvalds@linux-foundation.org, gregkh@linuxfoundation.org, rusty@rustcorp.com.au, gnomes@lxorguk.ukuu.org.uk, alan@linux.intel.com, dwmw2@infradead.org, arnd@arndb.de, ming.lei@canonical.com, linux-arch@vger.kernel.org, benh@kernel.crashing.org, ananth@in.ibm.com, pebolle@tiscali.nl, fontana@sharpeleven.org, david.vrabel@citrix.com, konrad.wilk@oracle.com, mcb30@ipxe.org, jgross@suse.coman Subject: Re: [PATCH v4 04/16] generic-sections: add section core helpers Date: Tue, 23 Aug 2016 19:33:06 +0200 [thread overview] Message-ID: <20160823173306.GA3296@wotan.suse.de> (raw) In-Reply-To: <20160823112633.7d482e62@roar.ozlabs.ibm.com> On Tue, Aug 23, 2016 at 11:26:33AM +1000, Nicholas Piggin wrote: > On Fri, 19 Aug 2016 14:34:02 -0700 > mcgrof@kernel.org wrote: > > +/** > > + * DOC: Standard ELF section use in Linux > > + * > > + * Linux makes use of the standard ELF sections, this sections documents > > + * these. > > + */ > > + > > +/** > > + * DOC: SECTION_RODATA > > + * > > + * Macro name for code which must be protected from write access, read only > > + * data. > > + */ > > +#define SECTION_RODATA .rodata > > These, for example. The exact name of the section is important in linker > scripts and asm, so I can't see the benefit of hiding it. I could be > missing the bigger picture. There's two goals by using a macro for these core names. One is to allow us to easily aggregate documentation in central place for each, the second is to then provide more easily grep'able helpers so we can use them when devising extensions or using them in extensions which further customize the sections in the kernel. > > +/** > > + * DOC: SECTION_TEXT > > + * > > + * Macro name used to annotate code (functions) used during regular > > + * kernel run time. This is combined with `SECTION_RODATA`, only this > > + * section also allows for execution. > > + * > > + */ > > +#define SECTION_TEXT .text > > I can't see how these comments are right. .rodata doesn't seem like it > should be combined with .text, and is not currently on powerpc. I think > it's for data, not code. On x86 and powerpc .rodata follows .text. On power currently the comment above in .rodata is: /* Text, read only data and other permanent read-only sections */ When this was introduced however read commit 14cf11af6cf60 ("powerpc: Merge enough to start building in arch/powerpc.") /* Read-only sections, merged into text segment: */ The format and style of putting rodata after text is kept from the older commits. This begs the question. What the hell is this thing talking about? On Linux this is done via mark_rodata_ro() on init/main.c when CONFIG_DEBUG_RODATA on architectures that support it. Architectures that implement this typically use issues set_memory_ro() -- on x86 a start address used is PFN_ALIGN(_text) with an end address of &__end_rodata_hpage_align. When architectures do not have CONFIG_DEBUG_RODATA() you end up with: static inline void mark_readonly(void) { pr_warn("This architecture does not have kernel memory protection.\n"); } So -- I should I clarify then in Linux we strive to have helpers adjust text and rodata set to ro with memory protection implemented via mark_readonly(). Architectures that do not support memory protection will lack a mark_readonly() implementation. For now I figured a less controversial introduction to the documentation as bland as it was above in my original patch would suffice, we can then expand on it with something like the above. Thoughts? > > +/* > > + * These section _ALL() helpers are for use on linker scripts and helpers > > + */ > > +#define SECTION_ALL(__section) \ > > + __section##.* > > This is another example. We know what .text.* does in the linker scripts > -- it's self documenting. But SECTION_ALL(.text)? I'm not sure that's an > improvement. Actually I saw it in the linker script changes and had to > come find the definition because I was a bit mislead: > > SECTION_ALL(.text) > > Initially I would expect this to be > > .text* > > Not > > .text.* > > The latter does not grab the .text section! Its not intended to grab .text but rather its for helpers that provide customizations based on a core section as base, in this case given your example it would be used by section ranges and linker tables for .text. Both section ranges and linker tables use postfix .something for their customizations. The SECTION_ALL() macro then is a helper for customizations on a core section. If the name is misleading would SECTION_CORE_ALL() be better with some documentation explaining this and the above goal ? > > +/* > > + * As per gcc's documentation a common asm separator is a new line followed > > + * by tab [0], it however seems possible to also just use a newline as its > > + * the most commonly empirically observed semantic and folks seem to agree > > + * this even works on S390. In case your architecture disagrees you may > > + * override this and define your own and keep the rest of the macros. > > + * > > + * [0] https://gcc.gnu.org/onlinedocs/gcc/Basic-Asm.html#Basic-Asm > > + */ > > +# ifndef ASM_CMD_SEP > > +# define ASM_CMD_SEP "\n" > > +# endif > > This does not seem like it belongs here. The name is fairly ugly too. Help me bikeshed, any name suggestions? > I guess something might be needed like this when dealing with generic > as directives common to all architectures, though. Indeed, it actually seems we don't have much in this area, so this is small baby step in that direction. > I would say include/asm-generic/asm.h should be a better place. I thought about this -- I'd be adding a new asm-generic/asm.h -- are folks OK with that right now? Or should we do that as a secondary step ? I preferred to do this as a secondary step as this series is long enough already and there is quite a bit that can be dumped in a common asm-generic/asm.h, a few thoughts on this already: o x86's asm/asm.h's use of __ASM_FORM() and include/linux/stringify.h share some traits which deserve possible consideration / rebranding. o Since C asm() just wrap things in strings defining a core set of helpers for a task seems justifiable, so for example we have __set_section_core_type(). Raw asm code then would use __set_section_core_type() directly and C asm() would just __stringify() it. I figured a bit of bikeshedding would be possible here, so I decided to leave this for a later set of patches. But indeed, I agree with you. If we want this meshed out now.. let me know and lets bikeshed away... > > diff --git a/include/linux/sections.h b/include/linux/sections.h > > new file mode 100644 > > index 000000000000..f21c6ee88ded > > --- /dev/null > > +++ b/include/linux/sections.h > > @@ -0,0 +1,111 @@ > > +#ifndef _LINUX_SECTIONS_H > > +#define _LINUX_SECTIONS_H > > +/* > > + * Linux de-facto sections > > + * > > + * Copyright (C) 2016 Luis R. Rodriguez <mcgrof@kernel.org> > > + * > > + * This program is free software; you can redistribute it and/or modify it > > + * under the terms of copyleft-next (version 0.3.1 or later) as published > > + * at http://copyleft-next.org/. > > + */ > > + > > +#include <asm/section-core.h> > > +#include <linux/export.h> > > + > > +#ifndef __ASSEMBLY__ > > + > > +/** > > + * DOC: Introduction > > + * > > + * Linux defines a set of common helpers which can be used to against its use > > + * of standard or custom Linux sections, this section is dedicated to these > > + * helpers. > > I'm still not quite sure what a Linux de-facto/standard/common section is > after this. Are they output sections? We have ELF standard sections, and we have then sections which Linux has introduced over the years which are now just known to be expected part of Linux, such as init stuff which we free after boot. The combination of the ELF standard sections and series of expected sections in Linux across all architectures is what this refers to as Linux de-facto/standard/common sections. The header file is intended to document these, step by step, and also provide helpers which allow further customizations based on these sections. > > I think it would be reasonable to drop the LINUX_ prefix and references to > Linux. I'm not so sure about this for section stuff -- are we certain we won't ever clash with some built in compiler things? I'm fine to drop the prefix -- bikeshedding -- will drop it for the next series unless I hear otherwise... Luis
WARNING: multiple messages have this Message-ID (diff)
From: "Luis R. Rodriguez" <mcgrof@kernel.org> To: Nicholas Piggin <npiggin@gmail.com> Cc: mcgrof@kernel.org, hpa@zytor.com, tglx@linutronix.de, mingo@redhat.com, jpoimboe@redhat.com, bp@alien8.de, linux@arm.linux.org.uk, mhiramat@kernel.org, masami.hiramatsu.pt@hitachi.com, jbaron@akamai.com, heiko.carstens@de.ibm.com, ananth@linux.vnet.ibm.com, anil.s.keshavamurthy@intel.com, davem@davemloft.net, realmz6@gmail.com, x86@kernel.org, luto@amacapital.net, keescook@chromium.org, torvalds@linux-foundation.org, gregkh@linuxfoundation.org, rusty@rustcorp.com.au, gnomes@lxorguk.ukuu.org.uk, alan@linux.intel.com, dwmw2@infradead.org, arnd@arndb.de, ming.lei@canonical.com, linux-arch@vger.kernel.org, benh@kernel.crashing.org, ananth@in.ibm.com, pebolle@tiscali.nl, fontana@sharpeleven.org, david.vrabel@citrix.com, konrad.wilk@oracle.com, mcb30@ipxe.org, jgross@suse.com, andrew.cooper3@citrix.com, andriy.shevchenko@linux.intel.com, paul.gortmaker@windriver.com, xen-devel@lists.xensource.com, ak@linux.intel.com, pali.rohar@gmail.com, dvhart@infradead.org, platform-driver-x86@vger.kernel.org, mmarek@suse.com, linux@rasmusvillemoes.dk, jkosina@suse.cz, korea.drzix@gmail.com, linux-kbuild@vger.kernel.org, tony.luck@intel.com, akpm@linux-foundation.org, linux-ia64@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-sh@vger.kernel.org, sparclinux@vger.kernel.org, catalin.marinas@arm.com, will.deacon@arm.com, rostedt@goodmis.org, jani.nikula@intel.com, mchehab@osg.samsung.com, markus.heiser@darmarit.de, acme@redhat.com, jolsa@kernel.org, msalter@redhat.com, chris@zankel.net, jcmvbkbc@gmail.com, linux-xtensa@linux-xtensa.org, paulus@samba.org, mpe@ellerman.id.au, James.Bottomley@HansenPartnership.com Subject: Re: [PATCH v4 04/16] generic-sections: add section core helpers Date: Tue, 23 Aug 2016 19:33:06 +0200 [thread overview] Message-ID: <20160823173306.GA3296@wotan.suse.de> (raw) Message-ID: <20160823173306.TUnuKf8JMAmS45GSA5I2g44ek2ByY4UK-2mGNvCriMw@z> (raw) In-Reply-To: <20160823112633.7d482e62@roar.ozlabs.ibm.com> On Tue, Aug 23, 2016 at 11:26:33AM +1000, Nicholas Piggin wrote: > On Fri, 19 Aug 2016 14:34:02 -0700 > mcgrof@kernel.org wrote: > > +/** > > + * DOC: Standard ELF section use in Linux > > + * > > + * Linux makes use of the standard ELF sections, this sections documents > > + * these. > > + */ > > + > > +/** > > + * DOC: SECTION_RODATA > > + * > > + * Macro name for code which must be protected from write access, read only > > + * data. > > + */ > > +#define SECTION_RODATA .rodata > > These, for example. The exact name of the section is important in linker > scripts and asm, so I can't see the benefit of hiding it. I could be > missing the bigger picture. There's two goals by using a macro for these core names. One is to allow us to easily aggregate documentation in central place for each, the second is to then provide more easily grep'able helpers so we can use them when devising extensions or using them in extensions which further customize the sections in the kernel. > > +/** > > + * DOC: SECTION_TEXT > > + * > > + * Macro name used to annotate code (functions) used during regular > > + * kernel run time. This is combined with `SECTION_RODATA`, only this > > + * section also allows for execution. > > + * > > + */ > > +#define SECTION_TEXT .text > > I can't see how these comments are right. .rodata doesn't seem like it > should be combined with .text, and is not currently on powerpc. I think > it's for data, not code. On x86 and powerpc .rodata follows .text. On power currently the comment above in .rodata is: /* Text, read only data and other permanent read-only sections */ When this was introduced however read commit 14cf11af6cf60 ("powerpc: Merge enough to start building in arch/powerpc.") /* Read-only sections, merged into text segment: */ The format and style of putting rodata after text is kept from the older commits. This begs the question. What the hell is this thing talking about? On Linux this is done via mark_rodata_ro() on init/main.c when CONFIG_DEBUG_RODATA on architectures that support it. Architectures that implement this typically use issues set_memory_ro() -- on x86 a start address used is PFN_ALIGN(_text) with an end address of &__end_rodata_hpage_align. When architectures do not have CONFIG_DEBUG_RODATA() you end up with: static inline void mark_readonly(void) { pr_warn("This architecture does not have kernel memory protection.\n"); } So -- I should I clarify then in Linux we strive to have helpers adjust text and rodata set to ro with memory protection implemented via mark_readonly(). Architectures that do not support memory protection will lack a mark_readonly() implementation. For now I figured a less controversial introduction to the documentation as bland as it was above in my original patch would suffice, we can then expand on it with something like the above. Thoughts? > > +/* > > + * These section _ALL() helpers are for use on linker scripts and helpers > > + */ > > +#define SECTION_ALL(__section) \ > > + __section##.* > > This is another example. We know what .text.* does in the linker scripts > -- it's self documenting. But SECTION_ALL(.text)? I'm not sure that's an > improvement. Actually I saw it in the linker script changes and had to > come find the definition because I was a bit mislead: > > SECTION_ALL(.text) > > Initially I would expect this to be > > .text* > > Not > > .text.* > > The latter does not grab the .text section! Its not intended to grab .text but rather its for helpers that provide customizations based on a core section as base, in this case given your example it would be used by section ranges and linker tables for .text. Both section ranges and linker tables use postfix .something for their customizations. The SECTION_ALL() macro then is a helper for customizations on a core section. If the name is misleading would SECTION_CORE_ALL() be better with some documentation explaining this and the above goal ? > > +/* > > + * As per gcc's documentation a common asm separator is a new line followed > > + * by tab [0], it however seems possible to also just use a newline as its > > + * the most commonly empirically observed semantic and folks seem to agree > > + * this even works on S390. In case your architecture disagrees you may > > + * override this and define your own and keep the rest of the macros. > > + * > > + * [0] https://gcc.gnu.org/onlinedocs/gcc/Basic-Asm.html#Basic-Asm > > + */ > > +# ifndef ASM_CMD_SEP > > +# define ASM_CMD_SEP "\n" > > +# endif > > This does not seem like it belongs here. The name is fairly ugly too. Help me bikeshed, any name suggestions? > I guess something might be needed like this when dealing with generic > as directives common to all architectures, though. Indeed, it actually seems we don't have much in this area, so this is small baby step in that direction. > I would say include/asm-generic/asm.h should be a better place. I thought about this -- I'd be adding a new asm-generic/asm.h -- are folks OK with that right now? Or should we do that as a secondary step ? I preferred to do this as a secondary step as this series is long enough already and there is quite a bit that can be dumped in a common asm-generic/asm.h, a few thoughts on this already: o x86's asm/asm.h's use of __ASM_FORM() and include/linux/stringify.h share some traits which deserve possible consideration / rebranding. o Since C asm() just wrap things in strings defining a core set of helpers for a task seems justifiable, so for example we have __set_section_core_type(). Raw asm code then would use __set_section_core_type() directly and C asm() would just __stringify() it. I figured a bit of bikeshedding would be possible here, so I decided to leave this for a later set of patches. But indeed, I agree with you. If we want this meshed out now.. let me know and lets bikeshed away... > > diff --git a/include/linux/sections.h b/include/linux/sections.h > > new file mode 100644 > > index 000000000000..f21c6ee88ded > > --- /dev/null > > +++ b/include/linux/sections.h > > @@ -0,0 +1,111 @@ > > +#ifndef _LINUX_SECTIONS_H > > +#define _LINUX_SECTIONS_H > > +/* > > + * Linux de-facto sections > > + * > > + * Copyright (C) 2016 Luis R. Rodriguez <mcgrof@kernel.org> > > + * > > + * This program is free software; you can redistribute it and/or modify it > > + * under the terms of copyleft-next (version 0.3.1 or later) as published > > + * at http://copyleft-next.org/. > > + */ > > + > > +#include <asm/section-core.h> > > +#include <linux/export.h> > > + > > +#ifndef __ASSEMBLY__ > > + > > +/** > > + * DOC: Introduction > > + * > > + * Linux defines a set of common helpers which can be used to against its use > > + * of standard or custom Linux sections, this section is dedicated to these > > + * helpers. > > I'm still not quite sure what a Linux de-facto/standard/common section is > after this. Are they output sections? We have ELF standard sections, and we have then sections which Linux has introduced over the years which are now just known to be expected part of Linux, such as init stuff which we free after boot. The combination of the ELF standard sections and series of expected sections in Linux across all architectures is what this refers to as Linux de-facto/standard/common sections. The header file is intended to document these, step by step, and also provide helpers which allow further customizations based on these sections. > > I think it would be reasonable to drop the LINUX_ prefix and references to > Linux. I'm not so sure about this for section stuff -- are we certain we won't ever clash with some built in compiler things? I'm fine to drop the prefix -- bikeshedding -- will drop it for the next series unless I hear otherwise... Luis
next prev parent reply other threads:[~2016-08-23 17:33 UTC|newest] Thread overview: 292+ messages / expand[flat|nested] mbox.gz Atom feed top 2016-08-19 21:33 [PATCH v4 00/16] linux: generalize sections, ranges and linker tables mcgrof 2016-08-19 21:33 ` mcgrof 2016-08-19 21:33 ` [PATCH v4 01/16] x86: remove LTO_REFERENCE_INITCALL() mcgrof 2016-08-19 21:33 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 02/16] dell-smo8800: include uaccess.h mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 03/16] scripts/module-common.lds: enable generation mcgrof 2016-08-19 21:34 ` [PATCH v4 04/16] generic-sections: add section core helpers mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-23 1:26 ` Nicholas Piggin 2016-08-23 1:26 ` Nicholas Piggin 2016-08-23 17:33 ` Luis R. Rodriguez [this message] 2016-08-23 17:33 ` Luis R. Rodriguez 2016-08-24 3:51 ` Nicholas Piggin 2016-08-24 3:51 ` Nicholas Piggin 2016-08-24 20:12 ` Luis R. Rodriguez 2016-08-24 20:12 ` Luis R. Rodriguez 2016-08-25 2:06 ` Nicholas Piggin 2016-08-25 2:06 ` Nicholas Piggin 2016-08-25 6:05 ` Luis R. Rodriguez 2016-08-25 6:05 ` Luis R. Rodriguez 2016-08-25 6:51 ` Nicholas Piggin 2016-08-25 6:51 ` Nicholas Piggin 2016-08-25 17:52 ` Luis R. Rodriguez 2016-08-25 17:52 ` Luis R. Rodriguez 2016-08-26 3:00 ` Nicholas Piggin 2016-08-26 6:38 ` Luis R. Rodriguez 2016-08-26 7:33 ` Nicholas Piggin 2016-08-26 7:33 ` Nicholas Piggin 2016-08-26 13:22 ` Luis R. Rodriguez 2016-08-26 13:22 ` Luis R. Rodriguez 2016-08-26 13:28 ` Nicholas Piggin 2016-08-26 13:28 ` Nicholas Piggin 2016-08-19 21:34 ` [PATCH v4 05/16] xtensa: skip adding literal when SORT() is used mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 06/16] ranges.h: add helpers to build and identify Linux section ranges mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 07/16] tables.h: add linker table support mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 08/16] kbuild: enable option to force compile force-obj-y and force-lib-y mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 09/16] firmware/Makefile: force recompilation if makefile changes mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 10/16] firmware: port built-in section to linker table mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 11/16] jump_label: move guard #endif down where it belongs mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 12/16] jump_label: port __jump_table to linker tables mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 13/16] dynamic_debug: port to use " mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 14/16] kprobes: move kprobe declarations to asm-generic/kprobes.h mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-22 15:11 ` Masami Hiramatsu 2016-08-22 15:11 ` Masami Hiramatsu 2016-08-23 16:31 ` Luis R. Rodriguez 2016-08-23 16:31 ` Luis R. Rodriguez 2016-08-29 14:04 ` Masami Hiramatsu 2016-08-29 14:04 ` Masami Hiramatsu 2016-08-30 20:07 ` Luis R. Rodriguez 2016-08-30 20:07 ` Luis R. Rodriguez 2017-02-01 20:02 ` Luis R. Rodriguez 2017-02-01 20:02 ` Luis R. Rodriguez 2016-08-19 21:34 ` [PATCH v4 15/16] kprobes: port .kprobes.text to section range mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:34 ` [PATCH v4 16/16] kprobes: port blacklist kprobes to linker table mcgrof 2016-08-19 21:34 ` mcgrof 2016-08-19 21:41 ` [PATCH v1 0/7] tools: add linker table userspace sandbox mcgrof 2016-08-19 21:41 ` mcgrof 2016-08-19 21:41 ` [PATCH v1 1/7] tools: add a userspace tools bug.h mcgrof 2016-08-19 21:41 ` mcgrof 2016-08-19 21:41 ` [PATCH v1 2/7] tools: add a basic tools printk.h mcgrof 2016-08-19 21:41 ` mcgrof 2016-08-19 21:41 ` [PATCH v1 3/7] tools: add init.h for tools mcgrof 2016-08-19 21:41 ` mcgrof 2016-08-19 21:41 ` [PATCH v1 4/7] tools: add __used and enable to override mcgrof 2016-08-19 21:41 ` mcgrof 2016-08-19 21:41 ` [PATCH v1 5/7] tools: expand export.h with VMLINUX_SYMBOL() mcgrof 2016-08-19 21:41 ` mcgrof 2016-08-19 21:41 ` [PATCH v1 6/7] tools: add __section() to compiler.h mcgrof 2016-08-19 21:41 ` mcgrof 2016-08-19 21:41 ` [PATCH v1 7/7] tools: add userspace linker table sandbox mcgrof 2016-08-19 22:31 ` Kees Cook 2016-08-23 0:07 ` Luis R. Rodriguez 2016-08-23 0:28 ` H. Peter Anvin 2016-08-23 0:28 ` H. Peter Anvin 2016-08-23 14:30 ` Arnaldo Carvalho de Melo 2016-08-23 14:30 ` Arnaldo Carvalho de Melo 2016-08-24 2:28 ` Kees Cook 2016-08-24 2:28 ` Kees Cook 2016-08-24 12:39 ` Arnaldo Carvalho de Melo 2016-08-24 12:39 ` Arnaldo Carvalho de Melo 2016-08-24 16:20 ` Luis R. Rodriguez 2016-08-24 16:20 ` Luis R. Rodriguez 2016-08-24 19:17 ` Arnaldo Carvalho de Melo 2016-08-24 19:17 ` Arnaldo Carvalho de Melo 2016-08-20 4:57 ` [PATCH v1 0/7] tools: add linker table userspace sandbox Rob Landley 2016-08-20 4:57 ` Rob Landley 2016-08-21 4:59 ` Rich Felker 2016-08-21 4:59 ` Rich Felker 2016-08-22 4:04 ` H. Peter Anvin 2016-08-22 4:04 ` H. Peter Anvin 2016-08-22 9:59 ` Vegard Nossum 2016-08-22 9:59 ` Vegard Nossum 2016-08-23 15:49 ` Luis R. Rodriguez 2016-08-23 15:49 ` Luis R. Rodriguez 2016-12-22 2:39 ` [PATCH v2 0/6] " Luis R. Rodriguez 2016-12-22 2:39 ` Luis R. Rodriguez 2016-12-22 2:39 ` [PATCH v2 1/6] tools: add a userspace tools bug.h Luis R. Rodriguez 2016-12-22 2:39 ` Luis R. Rodriguez 2016-12-22 2:39 ` [PATCH v2 2/6] tools: add init.h for tools Luis R. Rodriguez 2016-12-22 2:39 ` Luis R. Rodriguez 2016-12-22 2:39 ` [PATCH v2 3/6] tools: add __used and enable to override Luis R. Rodriguez 2016-12-22 2:39 ` Luis R. Rodriguez 2016-12-22 2:39 ` [PATCH v2 4/6] tools: expand export.h with VMLINUX_SYMBOL() Luis R. Rodriguez 2016-12-22 2:39 ` Luis R. Rodriguez 2016-12-22 2:39 ` [PATCH v2 5/6] tools: add __section() to compiler.h Luis R. Rodriguez 2016-12-22 2:39 ` Luis R. Rodriguez 2016-12-22 2:39 ` [PATCH v2 6/6] tools: add userspace linker table sandbox Luis R. Rodriguez 2017-01-09 15:02 ` [PATCH v3 0/6] tools: add linker table userspace sandbox Luis R. Rodriguez 2017-01-09 15:02 ` Luis R. Rodriguez 2017-01-09 15:02 ` [PATCH v3 1/6] tools: add a userspace tools bug.h Luis R. Rodriguez 2017-01-09 15:02 ` Luis R. Rodriguez 2017-01-09 15:02 ` [PATCH v3 2/6] tools: add init.h for tools Luis R. Rodriguez 2017-01-09 15:02 ` Luis R. Rodriguez 2017-01-09 15:02 ` [PATCH v3 3/6] tools: add __used and enable to override Luis R. Rodriguez 2017-01-09 15:02 ` Luis R. Rodriguez 2017-01-09 15:02 ` [PATCH v3 4/6] tools: expand export.h with VMLINUX_SYMBOL() Luis R. Rodriguez 2017-01-09 15:02 ` Luis R. Rodriguez 2017-01-09 15:02 ` [PATCH v3 5/6] tools: add __section() to compiler.h Luis R. Rodriguez 2017-01-09 15:02 ` Luis R. Rodriguez 2017-01-09 15:02 ` [PATCH v3 6/6] tools: add userspace linker table sandbox Luis R. Rodriguez 2017-01-15 21:12 ` [PATCH v4 0/6] tools: add linker table userspace sandbox Luis R. Rodriguez 2017-01-15 21:12 ` Luis R. Rodriguez 2017-01-15 21:12 ` [PATCH v4 1/6] tools: add a userspace tools bug.h Luis R. Rodriguez 2017-01-15 21:12 ` Luis R. Rodriguez 2017-01-19 11:01 ` Greg KH 2017-01-19 11:01 ` Greg KH 2017-01-15 21:12 ` [PATCH v4 2/6] tools: add init.h for tools Luis R. Rodriguez 2017-01-15 21:12 ` Luis R. Rodriguez 2017-01-19 11:02 ` Greg KH 2017-01-19 11:02 ` Greg KH 2017-01-15 21:12 ` [PATCH v4 3/6] tools: add __used and enable to override Luis R. Rodriguez 2017-01-15 21:12 ` Luis R. Rodriguez 2017-01-19 11:02 ` Greg KH 2017-01-19 11:02 ` Greg KH 2017-01-15 21:12 ` [PATCH v4 4/6] tools: expand export.h with VMLINUX_SYMBOL() Luis R. Rodriguez 2017-01-15 21:12 ` Luis R. Rodriguez 2017-01-19 11:03 ` Greg KH 2017-01-19 11:03 ` Greg KH 2017-01-19 11:04 ` Greg KH 2017-01-19 11:04 ` Greg KH 2017-01-15 21:12 ` [PATCH v4 5/6] tools: add __section() to compiler.h Luis R. Rodriguez 2017-01-15 21:12 ` Luis R. Rodriguez 2017-01-19 11:04 ` Greg KH 2017-01-19 11:04 ` Greg KH 2017-01-15 21:12 ` [PATCH v4 6/6] tools: add userspace linker table sandbox Luis R. Rodriguez 2017-01-19 11:07 ` Greg KH 2016-12-22 2:37 ` [PATCH v5 00/14] linux: generalize sections, ranges and linker tables Luis R. Rodriguez 2016-12-22 2:37 ` Luis R. Rodriguez 2016-12-22 2:37 ` [PATCH v5 01/14] generic-sections: add section core helpers Luis R. Rodriguez 2016-12-22 2:37 ` Luis R. Rodriguez 2016-12-22 2:37 ` [PATCH v5 02/14] xtensa: skip adding literal when SORT() is used Luis R. Rodriguez 2016-12-22 2:37 ` Luis R. Rodriguez 2016-12-22 2:37 ` [PATCH v5 03/14] ranges.h: add helpers to build and identify Linux section ranges Luis R. Rodriguez 2016-12-22 2:37 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 04/14] tables.h: add linker table support Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 13:58 ` Andy Shevchenko 2016-12-22 13:58 ` Andy Shevchenko 2017-01-03 21:25 ` Luis R. Rodriguez 2017-01-03 21:25 ` Luis R. Rodriguez 2017-01-04 9:47 ` Andy Shevchenko 2017-01-06 20:00 ` Luis R. Rodriguez 2017-01-06 20:43 ` Andy Shevchenko 2017-01-09 14:22 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 05/14] kbuild: enable option to force compile force-obj-y and force-lib-y Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 06/14] firmware/Makefile: force recompilation if makefile changes Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 07/14] firmware: port built-in section to linker table Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 08/14] jump_label: move guard #endif down where it belongs Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 09/14] jump_label: port __jump_table to linker tables Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 14:08 ` Andy Shevchenko 2016-12-22 14:08 ` Andy Shevchenko 2017-01-03 21:27 ` Luis R. Rodriguez 2017-01-03 21:27 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 10/14] dynamic_debug: port to use " Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 11/14] kprobes: move kprobe declarations to asm-generic/kprobes.h Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 12/14] kprobes: port .kprobes.text to section range Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 13/14] kprobes: port blacklist kprobes to linker table Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2016-12-22 2:38 ` [PATCH v5 14/14] lib: add linker tables test driver Luis R. Rodriguez 2016-12-22 2:38 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 00/14] linux: generalize sections, ranges and linker tables Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 01/14] generic-sections: add section core helpers Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-16 14:46 ` Borislav Petkov 2017-01-16 14:46 ` Borislav Petkov 2017-01-09 14:58 ` [PATCH v6 02/14] xtensa: skip adding literal when SORT() is used Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 03/14] ranges.h: add helpers to build and identify Linux section ranges Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 04/14] tables.h: add linker table support Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 05/14] kbuild: enable option to force compile force-obj-y and force-lib-y Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 06/14] firmware/Makefile: force recompilation if makefile changes Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 07/14] firmware: port built-in section to linker table Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 08/14] jump_label: move guard #endif down where it belongs Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 09/14] jump_label: port __jump_table to linker tables Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 10/14] dynamic_debug: port to use " Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 11/14] kprobes: move kprobe declarations to asm-generic/kprobes.h Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 12/14] kprobes: port .kprobes.text to section range Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 13/14] kprobes: port blacklist kprobes to linker table Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 14:58 ` [PATCH v6 14/14] lib: add linker tables test driver Luis R. Rodriguez 2017-01-09 14:58 ` Luis R. Rodriguez 2017-01-09 16:27 ` [PATCH v6 00/14] linux: generalize sections, ranges and linker tables Andy Shevchenko 2017-01-09 16:27 ` Andy Shevchenko 2017-01-09 16:36 ` Luis R. Rodriguez 2017-01-09 17:12 ` Shevchenko, Andriy 2017-01-09 17:16 ` Luis R. Rodriguez 2017-01-09 18:29 ` Andy Shevchenko 2017-01-09 18:29 ` Andy Shevchenko 2017-01-11 14:37 ` Luis R. Rodriguez 2017-01-11 14:37 ` Luis R. Rodriguez 2017-01-15 21:10 ` [PATCH v7 " Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-15 21:10 ` [PATCH v7 01/14] generic-sections: add section core helpers Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-19 11:09 ` Greg KH 2017-01-19 11:09 ` Greg KH 2017-01-15 21:10 ` [PATCH v7 02/14] xtensa: skip adding literal when SORT() is used Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-18 11:29 ` Borislav Petkov 2017-01-18 11:29 ` Borislav Petkov 2017-01-15 21:10 ` [PATCH v7 03/14] ranges.h: add helpers to build and identify Linux section ranges Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-19 11:11 ` Greg KH 2017-01-19 11:11 ` Greg KH 2017-01-15 21:10 ` [PATCH v7 04/14] tables.h: add linker table support Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-19 11:13 ` Greg KH 2017-01-19 11:13 ` Greg KH 2017-01-15 21:10 ` [PATCH v7 05/14] kbuild: enable option to force compile force-obj-y and force-lib-y Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-19 11:18 ` Greg KH 2017-01-19 11:18 ` Greg KH 2017-01-15 21:10 ` [PATCH v7 06/14] firmware/Makefile: force recompilation if makefile changes Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-19 11:19 ` Greg KH 2017-01-19 11:19 ` Greg KH 2017-01-23 16:12 ` Luis R. Rodriguez 2017-01-15 21:10 ` [PATCH v7 07/14] firmware: port built-in section to linker table Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-15 21:10 ` [PATCH v7 08/14] jump_label: move guard #endif down where it belongs Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-19 11:20 ` Greg KH 2017-01-19 11:20 ` Greg KH 2017-01-15 21:10 ` [PATCH v7 09/14] jump_label: port __jump_table to linker tables Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-19 11:24 ` Greg KH 2017-01-19 11:24 ` Greg KH 2017-01-15 21:10 ` [PATCH v7 10/14] dynamic_debug: port to use " Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-15 21:10 ` [PATCH v7 11/14] kprobes: move kprobe declarations to asm-generic/kprobes.h Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-15 21:10 ` [PATCH v7 12/14] kprobes: port .kprobes.text to section range Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-15 21:10 ` [PATCH v7 13/14] kprobes: port blacklist kprobes to linker table Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez 2017-01-15 21:10 ` [PATCH v7 14/14] lib: add linker tables test driver Luis R. Rodriguez 2017-01-15 21:10 ` Luis R. Rodriguez -- strict thread matches above, loose matches on Subject: below -- 2016-08-19 21:32 [PATCH v4 00/16] linux: generalize sections, ranges and linker tables mcgrof 2016-08-19 21:32 ` [PATCH v4 04/16] generic-sections: add section core helpers mcgrof 2016-08-19 21:32 ` mcgrof 2016-08-19 21:47 ` Kees Cook 2016-08-22 23:13 ` Luis R. Rodriguez
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20160823173306.GA3296@wotan.suse.de \ --to=mcgrof@kernel.org \ --cc=alan@linux.intel.com \ --cc=ananth@in.ibm.com \ --cc=ananth@linux.vnet.ibm.com \ --cc=anil.s.keshavamurthy@intel.com \ --cc=arnd@arndb.de \ --cc=benh@kernel.crashing.org \ --cc=bp@alien8.de \ --cc=davem@davemloft.net \ --cc=david.vrabel@citrix.com \ --cc=dwmw2@infradead.org \ --cc=fontana@sharpeleven.org \ --cc=gnomes@lxorguk.ukuu.org.uk \ --cc=gregkh@linuxfoundation.org \ --cc=heiko.carstens@de.ibm.com \ --cc=hpa@zytor.com \ --cc=jbaron@akamai.com \ --cc=jgross@suse.coman \ --cc=jpoimboe@redhat.com \ --cc=keescook@chromium.org \ --cc=konrad.wilk@oracle.com \ --cc=linux-arch@vger.kernel.org \ --cc=linux@arm.linux.org.uk \ --cc=luto@amacapital.net \ --cc=masami.hiramatsu.pt@hitachi.com \ --cc=mcb30@ipxe.org \ --cc=mhiramat@kernel.org \ --cc=ming.lei@canonical.com \ --cc=mingo@redhat.com \ --cc=npiggin@gmail.com \ --cc=pebolle@tiscali.nl \ --cc=realmz6@gmail.com \ --cc=rusty@rustcorp.com.au \ --cc=tglx@linutronix.de \ --cc=torvalds@linux-foundation.org \ --cc=x86@kernel.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).