, Jarkko Sakkinen <jar...@profian.com>, Sami Tolvanen 
<samitolva...@google.com>, "Naveen N. Rao" <naveen.n....@linux.ibm.com>, Marco 
Elver <el...@google.com>, Kees Cook <keesc...@chromium.org>, Steven Rostedt 
<rost...@goodmis.org>, Nathan Chancellor <nat...@kernel.org>, Mark Brown 
<broo...@kernel.org>, Borislav Petkov <b...@alien8.de>, Alexander Egorenkov 
<egore...@linux.ibm.com>, Thomas Bogendoerfer <tsbog...@alpha.franken.de>, 
linux-par...@vger.kernel.org, Nathaniel McCallum <nathan...@profian.com>, 
Dmitry Torokhov <dmitry.torok...@gmail.com>, "David S. Miller" 
<da...@davemloft.net>, "Kirill A. Shutemov" <kirill.shute...@linux.intel.com>, 
Tobias Huschle <husc...@linux.ibm.com>, "Peter Zijlstra \(Intel\)" 
<pet...@infradead.org>, "H. Peter Anvin" <h...@zytor.com>, 
sparcli...@vger.kernel.org, Tiezhu Yang <yangtie...@loongson.cn>, Miroslav 
Benes <mbe...@suse.cz>, Chen Zhongjin <chenzhong...@huawei.com>, Ard Biesheuvel 
<a...@kernel.org>, x...@kernel.org, linux-ri...@lists.infradead.org, Ing
 o Molnar <mi...@redhat.com>, Aaron Tomlin <atom...@redhat.com>, Albert Ou 
<a...@eecs.berkeley.edu>, Heiko Carstens <h...@linux.ibm.com>, Liao Chang 
<liaocha...@huawei.com>, Paul Walmsley <paul.walms...@sifive.com>, Josh 
Poimboeuf <jpoim...@kernel.org>, Thomas Richter <tmri...@linux.ibm.com>, 
linux-m...@vger.kernel.org, Changbin Du <changbin...@intel.com>, Palmer Dabbelt 
<pal...@dabbelt.com>, linuxppc-dev@lists.ozlabs.org, 
linux-modu...@vger.kernel.org
Errors-To: linuxppc-dev-bounces+archive=mail-archive....@lists.ozlabs.org
Sender: "Linuxppc-dev" 
<linuxppc-dev-bounces+archive=mail-archive....@lists.ozlabs.org>

On Thu, Jun 09, 2022 at 08:47:38AM +0100, Russell King (Oracle) wrote:
> On Wed, Jun 08, 2022 at 02:59:27AM +0300, Jarkko Sakkinen wrote:
> > diff --git a/arch/arm/kernel/Makefile b/arch/arm/kernel/Makefile
> > index 553866751e1a..d2bb954cd54f 100644
> > --- a/arch/arm/kernel/Makefile
> > +++ b/arch/arm/kernel/Makefile
> > @@ -44,6 +44,11 @@ obj-$(CONFIG_CPU_IDLE)           += cpuidle.o
> >  obj-$(CONFIG_ISA_DMA_API)  += dma.o
> >  obj-$(CONFIG_FIQ)          += fiq.o fiqasm.o
> >  obj-$(CONFIG_MODULES)              += armksyms.o module.o
> > +ifeq ($(CONFIG_MODULES),y)
> > +obj-y                              += module_alloc.o
> > +else
> > +obj-$(CONFIG_KPROBES)              += module_alloc.o
> > +endif
> 
> Doesn't:
> 
> obj-$(CONFIG_MODULES)         += module_alloc.o
> obj-$(CONFIG_KPROBES)         += module_alloc.o

That just begs for a new kconfig symbol for the object, and for
the object then to be built with it.

The archs which override the default can use ARCH_HAS_VM_ALLOC_EXEC.
Please note that the respective free is important as well and its
not clear if we need an another define for the free. Someone has
to do that work. We want to ensure to noexec the code on free and
this can vary on each arch.

> work just as well? The kbuild modules.rst documentation says:
> 
>         The order of files in $(obj-y) is significant.  Duplicates in
>         the lists are allowed: the first instance will be linked into
>         built-in.a and succeeding instances will be ignored.
> 
> so you should be fine... or the documentation is wrong!

Agreed, but this is just sloppy, better to use a new kconfig symbol
to represent what is actually being required.

  Luis

Reply via email to