From: Mike Rapoport <rppt@kernel.org>
To: Liviu Dudau <liviu@dudau.co.uk>
Cc: "Luis Chamberlain" <mcgrof@kernel.org>,
linux-kernel@vger.kernel.org,
"Alexandre Ghiti" <alexghiti@rivosinc.com>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Björn Töpel" <bjorn@kernel.org>,
"Catalin Marinas" <catalin.marinas@arm.com>,
"Christophe Leroy" <christophe.leroy@csgroup.eu>,
"David S. Miller" <davem@davemloft.net>,
"Dinh Nguyen" <dinguyen@kernel.org>,
"Donald Dutile" <ddutile@redhat.com>,
"Eric Chanudet" <echanude@redhat.com>,
"Heiko Carstens" <hca@linux.ibm.com>,
"Helge Deller" <deller@gmx.de>,
"Huacai Chen" <chenhuacai@kernel.org>,
"Kent Overstreet" <kent.overstreet@linux.dev>,
"Mark Rutland" <mark.rutland@arm.com>,
"Masami Hiramatsu" <mhiramat@kernel.org>,
"Michael Ellerman" <mpe@ellerman.id.au>,
"Nadav Amit" <nadav.amit@gmail.com>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"Peter Zijlstra" <peterz@infradead.org>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Rick Edgecombe" <rick.p.edgecombe@intel.com>,
"Russell King" <linux@armlinux.org.uk>,
"Sam Ravnborg" <sam@ravnborg.org>, "Song Liu" <song@kernel.org>,
"Steven Rostedt" <rostedt@goodmis.org>,
"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Will Deacon" <will@kernel.org>,
bpf@vger.kernel.org, linux-arch@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, linux-mips@vger.kernel.org,
linux-mm@kvack.org, linux-modules@vger.kernel.org,
linux-parisc@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org,
linuxppc-dev@lists.ozlabs.org, loongarch@lists.linux.dev,
netdev@vger.kernel.org, sparclinux@vger.kernel.org,
x86@kernel.org
Subject: Re: [PATCH v7 00/16] mm: jit/text allocator
Date: Fri, 3 May 2024 09:28:25 +0300 [thread overview]
Message-ID: <ZjSECeooxZELXSC1@kernel.org> (raw)
In-Reply-To: <ZjQuggSFcO8FXSd2@bart.dudau.co.uk>
On Fri, May 03, 2024 at 01:23:30AM +0100, Liviu Dudau wrote:
> On Thu, May 02, 2024 at 04:07:05PM -0700, Luis Chamberlain wrote:
> > On Thu, May 02, 2024 at 11:50:36PM +0100, Liviu Dudau wrote:
> > > On Mon, Apr 29, 2024 at 09:29:20AM -0700, Luis Chamberlain wrote:
> > > > On Mon, Apr 29, 2024 at 03:16:04PM +0300, Mike Rapoport wrote:
> > > > > From: "Mike Rapoport (IBM)" <rppt@kernel.org>
> > > > >
> > > > > Hi,
> > > > >
> > > > > The patches are also available in git:
> > > > > https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git/log/?h=execmem/v7
> > > > >
> > > > > v7 changes:
> > > > > * define MODULE_{VADDR,END} for riscv32 to fix the build and avoid
> > > > > #ifdefs in a function body
> > > > > * add Acks, thanks everybody
> > > >
> > > > Thanks, I've pushed this to modules-next for further exposure / testing.
> > > > Given the status of testing so far with prior revisions, in that only a
> > > > few issues were found and that those were fixed, and the status of
> > > > reviews, this just might be ripe for v6.10.
> > >
> > > Looks like there is still some work needed. I've picked up next-20240501
> > > and on arch/mips with CONFIG_MODULE_COMPRESS_XZ=y and CONFIG_MODULE_DECOMPRESS=y
> > > I fail to load any module:
> > >
> > > # modprobe rfkill
> > > [11746.539090] Invalid ELF header magic: != ELF
> > > [11746.587149] execmem: unable to allocate memory
> > > modprobe: can't load module rfkill (kernel/net/rfkill/rfkill.ko.xz): Out of memory
> > >
> > > The (hopefully) relevant parts of my .config:
> >
> > Thanks for the report! Any chance we can get you to try a bisection? I
> > think it should take 2-3 test boots. To help reduce scope you try modules-next:
> >
> > https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/log/?h=modules-next
> >
> > Then can you check by resetting your tree to commmit 3fbe6c2f820a76 (mm:
> > introduce execmem_alloc() and execmem_free()"). I suspect that should
> > boot, so your bad commit would be the tip 3c2c250cb3a5fbb ("bpf: remove
> > CONFIG_BPF_JIT dependency on CONFIG_MODULES of").
> >
> > That gives us only a few commits to bisect:
> >
> > git log --oneline 3fbe6c2f820a76bc36d5546bda85832f57c8fce2..
> > 3c2c250cb3a5 (HEAD -> modules-next, korg/modules-next) bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
> > 11e8e65cce5c kprobes: remove dependency on CONFIG_MODULES
> > e10cbc38697b powerpc: use CONFIG_EXECMEM instead of CONFIG_MODULES where appropriate
> > 4da3d38f24c5 x86/ftrace: enable dynamic ftrace without CONFIG_MODULES
> > 13ae3d74ee70 arch: make execmem setup available regardless of CONFIG_MODULES
> > 460bbbc70a47 powerpc: extend execmem_params for kprobes allocations
> > e1a14069b5b4 arm64: extend execmem_info for generated code allocations
> > 971e181c6585 riscv: extend execmem_params for generated code allocations
> > 0fa276f26721 mm/execmem, arch: convert remaining overrides of module_alloc to execmem
> > 022cef244287 mm/execmem, arch: convert simple overrides of module_alloc to execmem
> >
> > With 2-3 boots we should be to tell which is the bad commit.
>
> Looks like 0fa276f26721 is the first bad commit.
>
> $ git bisect log
> # bad: [3c2c250cb3a5fbbccc4a4ff4c9354c54af91f02c] bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
> # good: [3fbe6c2f820a76bc36d5546bda85832f57c8fce2] mm: introduce execmem_alloc() and execmem_free()
> git bisect start '3c2c250cb3a5' '3fbe6c2f820a76'
> # bad: [460bbbc70a47e929b1936ca68979f3b79f168fc6] powerpc: extend execmem_params for kprobes allocations
> git bisect bad 460bbbc70a47e929b1936ca68979f3b79f168fc6
> # bad: [0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e] mm/execmem, arch: convert remaining overrides of module_alloc to execmem
> git bisect bad 0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e
> # good: [022cef2442870db738a366d3b7a636040c081859] mm/execmem, arch: convert simple overrides of module_alloc to execmem
> git bisect good 022cef2442870db738a366d3b7a636040c081859
> # first bad commit: [0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e] mm/execmem, arch: convert remaining overrides of module_alloc to execmem
>
> Maybe MIPS also needs a ARCH_WANTS_EXECMEM_LATE?
I don't think so. It rather seems there's a bug in the initialization of
the defaults in execmem. This should fix it:
diff --git a/mm/execmem.c b/mm/execmem.c
index f6dc3fabc1ca..0c4b36bc6d10 100644
--- a/mm/execmem.c
+++ b/mm/execmem.c
@@ -118,7 +118,6 @@ static void __init __execmem_init(void)
info->ranges[EXECMEM_DEFAULT].end = VMALLOC_END;
info->ranges[EXECMEM_DEFAULT].pgprot = PAGE_KERNEL_EXEC;
info->ranges[EXECMEM_DEFAULT].alignment = 1;
- return;
}
if (!execmem_validate(info))
> Best regards,
> Liviu
--
Sincerely yours,
Mike.
WARNING: multiple messages have this Message-ID (diff)
From: Mike Rapoport <rppt@kernel.org>
To: Liviu Dudau <liviu@dudau.co.uk>
Cc: "Luis Chamberlain" <mcgrof@kernel.org>,
linux-kernel@vger.kernel.org,
"Alexandre Ghiti" <alexghiti@rivosinc.com>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Björn Töpel" <bjorn@kernel.org>,
"Catalin Marinas" <catalin.marinas@arm.com>,
"Christophe Leroy" <christophe.leroy@csgroup.eu>,
"David S. Miller" <davem@davemloft.net>,
"Dinh Nguyen" <dinguyen@kernel.org>,
"Donald Dutile" <ddutile@redhat.com>,
"Eric Chanudet" <echanude@redhat.com>,
"Heiko Carstens" <hca@linux.ibm.com>,
"Helge Deller" <deller@gmx.de>,
"Huacai Chen" <chenhuacai@kernel.org>,
"Kent Overstreet" <kent.overstreet@linux.dev>,
"Mark Rutland" <mark.rutland@arm.com>,
"Masami Hiramatsu" <mhiramat@kernel.org>,
"Michael Ellerman" <mpe@ellerman.id.au>,
"Nadav Amit" <nadav.amit@gmail.com>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"Peter Zijlstra" <peterz@infradead.org>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Rick Edgecombe" <rick.p.edgecombe@intel.com>,
"Russell King" <linux@armlinux.org.uk>,
"Sam Ravnborg" <sam@ravnborg.org>, "Song Liu" <song@kernel.org>,
"Steven Rostedt" <rostedt@goodmis.org>,
"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Will Deacon" <will@kernel.org>,
bpf@vger.kernel.org, linux-arch@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, linux-mips@vger.kernel.org,
linux-mm@kvack.org, linux-modules@vger.kernel.org,
linux-parisc@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org,
linuxppc-dev@lists.ozlabs.org, loongarch@lists.linux.dev,
netdev@vger.kernel.org, sparclinux@vger.kernel.org,
x86@kernel.org
Subject: Re: [PATCH v7 00/16] mm: jit/text allocator
Date: Fri, 3 May 2024 09:28:25 +0300 [thread overview]
Message-ID: <ZjSECeooxZELXSC1@kernel.org> (raw)
In-Reply-To: <ZjQuggSFcO8FXSd2@bart.dudau.co.uk>
On Fri, May 03, 2024 at 01:23:30AM +0100, Liviu Dudau wrote:
> On Thu, May 02, 2024 at 04:07:05PM -0700, Luis Chamberlain wrote:
> > On Thu, May 02, 2024 at 11:50:36PM +0100, Liviu Dudau wrote:
> > > On Mon, Apr 29, 2024 at 09:29:20AM -0700, Luis Chamberlain wrote:
> > > > On Mon, Apr 29, 2024 at 03:16:04PM +0300, Mike Rapoport wrote:
> > > > > From: "Mike Rapoport (IBM)" <rppt@kernel.org>
> > > > >
> > > > > Hi,
> > > > >
> > > > > The patches are also available in git:
> > > > > https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git/log/?h=execmem/v7
> > > > >
> > > > > v7 changes:
> > > > > * define MODULE_{VADDR,END} for riscv32 to fix the build and avoid
> > > > > #ifdefs in a function body
> > > > > * add Acks, thanks everybody
> > > >
> > > > Thanks, I've pushed this to modules-next for further exposure / testing.
> > > > Given the status of testing so far with prior revisions, in that only a
> > > > few issues were found and that those were fixed, and the status of
> > > > reviews, this just might be ripe for v6.10.
> > >
> > > Looks like there is still some work needed. I've picked up next-20240501
> > > and on arch/mips with CONFIG_MODULE_COMPRESS_XZ=y and CONFIG_MODULE_DECOMPRESS=y
> > > I fail to load any module:
> > >
> > > # modprobe rfkill
> > > [11746.539090] Invalid ELF header magic: != ELF
> > > [11746.587149] execmem: unable to allocate memory
> > > modprobe: can't load module rfkill (kernel/net/rfkill/rfkill.ko.xz): Out of memory
> > >
> > > The (hopefully) relevant parts of my .config:
> >
> > Thanks for the report! Any chance we can get you to try a bisection? I
> > think it should take 2-3 test boots. To help reduce scope you try modules-next:
> >
> > https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/log/?h=modules-next
> >
> > Then can you check by resetting your tree to commmit 3fbe6c2f820a76 (mm:
> > introduce execmem_alloc() and execmem_free()"). I suspect that should
> > boot, so your bad commit would be the tip 3c2c250cb3a5fbb ("bpf: remove
> > CONFIG_BPF_JIT dependency on CONFIG_MODULES of").
> >
> > That gives us only a few commits to bisect:
> >
> > git log --oneline 3fbe6c2f820a76bc36d5546bda85832f57c8fce2..
> > 3c2c250cb3a5 (HEAD -> modules-next, korg/modules-next) bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
> > 11e8e65cce5c kprobes: remove dependency on CONFIG_MODULES
> > e10cbc38697b powerpc: use CONFIG_EXECMEM instead of CONFIG_MODULES where appropriate
> > 4da3d38f24c5 x86/ftrace: enable dynamic ftrace without CONFIG_MODULES
> > 13ae3d74ee70 arch: make execmem setup available regardless of CONFIG_MODULES
> > 460bbbc70a47 powerpc: extend execmem_params for kprobes allocations
> > e1a14069b5b4 arm64: extend execmem_info for generated code allocations
> > 971e181c6585 riscv: extend execmem_params for generated code allocations
> > 0fa276f26721 mm/execmem, arch: convert remaining overrides of module_alloc to execmem
> > 022cef244287 mm/execmem, arch: convert simple overrides of module_alloc to execmem
> >
> > With 2-3 boots we should be to tell which is the bad commit.
>
> Looks like 0fa276f26721 is the first bad commit.
>
> $ git bisect log
> # bad: [3c2c250cb3a5fbbccc4a4ff4c9354c54af91f02c] bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
> # good: [3fbe6c2f820a76bc36d5546bda85832f57c8fce2] mm: introduce execmem_alloc() and execmem_free()
> git bisect start '3c2c250cb3a5' '3fbe6c2f820a76'
> # bad: [460bbbc70a47e929b1936ca68979f3b79f168fc6] powerpc: extend execmem_params for kprobes allocations
> git bisect bad 460bbbc70a47e929b1936ca68979f3b79f168fc6
> # bad: [0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e] mm/execmem, arch: convert remaining overrides of module_alloc to execmem
> git bisect bad 0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e
> # good: [022cef2442870db738a366d3b7a636040c081859] mm/execmem, arch: convert simple overrides of module_alloc to execmem
> git bisect good 022cef2442870db738a366d3b7a636040c081859
> # first bad commit: [0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e] mm/execmem, arch: convert remaining overrides of module_alloc to execmem
>
> Maybe MIPS also needs a ARCH_WANTS_EXECMEM_LATE?
I don't think so. It rather seems there's a bug in the initialization of
the defaults in execmem. This should fix it:
diff --git a/mm/execmem.c b/mm/execmem.c
index f6dc3fabc1ca..0c4b36bc6d10 100644
--- a/mm/execmem.c
+++ b/mm/execmem.c
@@ -118,7 +118,6 @@ static void __init __execmem_init(void)
info->ranges[EXECMEM_DEFAULT].end = VMALLOC_END;
info->ranges[EXECMEM_DEFAULT].pgprot = PAGE_KERNEL_EXEC;
info->ranges[EXECMEM_DEFAULT].alignment = 1;
- return;
}
if (!execmem_validate(info))
> Best regards,
> Liviu
--
Sincerely yours,
Mike.
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
WARNING: multiple messages have this Message-ID (diff)
From: Mike Rapoport <rppt@kernel.org>
To: Liviu Dudau <liviu@dudau.co.uk>
Cc: "Mark Rutland" <mark.rutland@arm.com>,
x86@kernel.org, "Sam Ravnborg" <sam@ravnborg.org>,
"Peter Zijlstra" <peterz@infradead.org>,
"Catalin Marinas" <catalin.marinas@arm.com>,
"Russell King" <linux@armlinux.org.uk>,
"Song Liu" <song@kernel.org>,
"Donald Dutile" <ddutile@redhat.com>,
sparclinux@vger.kernel.org, linux-riscv@lists.infradead.org,
"Nadav Amit" <nadav.amit@gmail.com>,
linux-arch@vger.kernel.org, linux-s390@vger.kernel.org,
"Helge Deller" <deller@gmx.de>,
"Huacai Chen" <chenhuacai@kernel.org>,
"Björn Töpel" <bjorn@kernel.org>,
linux-mips@vger.kernel.org, linux-trace-kernel@vger.kernel.org,
"Alexandre Ghiti" <alexghiti@rivosinc.com>,
"Will Deacon" <will@kernel.org>,
"Heiko Carstens" <hca@linux.ibm.com>,
"Steven Rostedt" <rostedt@goodmis.org>,
loongarch@lists.linux.dev, "Thomas Gleixner" <tglx@linutronix.de>,
bpf@vger.kernel.org, linux-arm-kernel@lists.infradead.org,
"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>,
linux-parisc@vger.kernel.org,
"Philippe Mathieu-Daud=E 9" <philmd@linaro.org>,
linux-mm@kvack.org, netdev@vger.kernel.org,
"Kent Overstreet" <kent.overstreet@linux.dev>,
linux-kernel@vger.kernel.org, "Dinh Nguyen" <dinguyen@kernel.org>,
"Luis Chamberlain" <mcgrof@kernel.org>,
"Eric Chanudet" <echanude@redhat.com>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"Masami Hiramatsu" <mhiramat@kernel.org>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Rick Edgecombe" <rick.p.edgecombe@intel.com>,
linuxppc-dev@lists.ozlabs.org,
"David S. Miller" <davem@davemloft.net>,
linux-modules@vger.kernel.org
Subject: Re: [PATCH v7 00/16] mm: jit/text allocator
Date: Fri, 3 May 2024 09:28:25 +0300 [thread overview]
Message-ID: <ZjSECeooxZELXSC1@kernel.org> (raw)
In-Reply-To: <ZjQuggSFcO8FXSd2@bart.dudau.co.uk>
On Fri, May 03, 2024 at 01:23:30AM +0100, Liviu Dudau wrote:
> On Thu, May 02, 2024 at 04:07:05PM -0700, Luis Chamberlain wrote:
> > On Thu, May 02, 2024 at 11:50:36PM +0100, Liviu Dudau wrote:
> > > On Mon, Apr 29, 2024 at 09:29:20AM -0700, Luis Chamberlain wrote:
> > > > On Mon, Apr 29, 2024 at 03:16:04PM +0300, Mike Rapoport wrote:
> > > > > From: "Mike Rapoport (IBM)" <rppt@kernel.org>
> > > > >
> > > > > Hi,
> > > > >
> > > > > The patches are also available in git:
> > > > > https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git/log/?h=execmem/v7
> > > > >
> > > > > v7 changes:
> > > > > * define MODULE_{VADDR,END} for riscv32 to fix the build and avoid
> > > > > #ifdefs in a function body
> > > > > * add Acks, thanks everybody
> > > >
> > > > Thanks, I've pushed this to modules-next for further exposure / testing.
> > > > Given the status of testing so far with prior revisions, in that only a
> > > > few issues were found and that those were fixed, and the status of
> > > > reviews, this just might be ripe for v6.10.
> > >
> > > Looks like there is still some work needed. I've picked up next-20240501
> > > and on arch/mips with CONFIG_MODULE_COMPRESS_XZ=y and CONFIG_MODULE_DECOMPRESS=y
> > > I fail to load any module:
> > >
> > > # modprobe rfkill
> > > [11746.539090] Invalid ELF header magic: != ELF
> > > [11746.587149] execmem: unable to allocate memory
> > > modprobe: can't load module rfkill (kernel/net/rfkill/rfkill.ko.xz): Out of memory
> > >
> > > The (hopefully) relevant parts of my .config:
> >
> > Thanks for the report! Any chance we can get you to try a bisection? I
> > think it should take 2-3 test boots. To help reduce scope you try modules-next:
> >
> > https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/log/?h=modules-next
> >
> > Then can you check by resetting your tree to commmit 3fbe6c2f820a76 (mm:
> > introduce execmem_alloc() and execmem_free()"). I suspect that should
> > boot, so your bad commit would be the tip 3c2c250cb3a5fbb ("bpf: remove
> > CONFIG_BPF_JIT dependency on CONFIG_MODULES of").
> >
> > That gives us only a few commits to bisect:
> >
> > git log --oneline 3fbe6c2f820a76bc36d5546bda85832f57c8fce2..
> > 3c2c250cb3a5 (HEAD -> modules-next, korg/modules-next) bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
> > 11e8e65cce5c kprobes: remove dependency on CONFIG_MODULES
> > e10cbc38697b powerpc: use CONFIG_EXECMEM instead of CONFIG_MODULES where appropriate
> > 4da3d38f24c5 x86/ftrace: enable dynamic ftrace without CONFIG_MODULES
> > 13ae3d74ee70 arch: make execmem setup available regardless of CONFIG_MODULES
> > 460bbbc70a47 powerpc: extend execmem_params for kprobes allocations
> > e1a14069b5b4 arm64: extend execmem_info for generated code allocations
> > 971e181c6585 riscv: extend execmem_params for generated code allocations
> > 0fa276f26721 mm/execmem, arch: convert remaining overrides of module_alloc to execmem
> > 022cef244287 mm/execmem, arch: convert simple overrides of module_alloc to execmem
> >
> > With 2-3 boots we should be to tell which is the bad commit.
>
> Looks like 0fa276f26721 is the first bad commit.
>
> $ git bisect log
> # bad: [3c2c250cb3a5fbbccc4a4ff4c9354c54af91f02c] bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
> # good: [3fbe6c2f820a76bc36d5546bda85832f57c8fce2] mm: introduce execmem_alloc() and execmem_free()
> git bisect start '3c2c250cb3a5' '3fbe6c2f820a76'
> # bad: [460bbbc70a47e929b1936ca68979f3b79f168fc6] powerpc: extend execmem_params for kprobes allocations
> git bisect bad 460bbbc70a47e929b1936ca68979f3b79f168fc6
> # bad: [0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e] mm/execmem, arch: convert remaining overrides of module_alloc to execmem
> git bisect bad 0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e
> # good: [022cef2442870db738a366d3b7a636040c081859] mm/execmem, arch: convert simple overrides of module_alloc to execmem
> git bisect good 022cef2442870db738a366d3b7a636040c081859
> # first bad commit: [0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e] mm/execmem, arch: convert remaining overrides of module_alloc to execmem
>
> Maybe MIPS also needs a ARCH_WANTS_EXECMEM_LATE?
I don't think so. It rather seems there's a bug in the initialization of
the defaults in execmem. This should fix it:
diff --git a/mm/execmem.c b/mm/execmem.c
index f6dc3fabc1ca..0c4b36bc6d10 100644
--- a/mm/execmem.c
+++ b/mm/execmem.c
@@ -118,7 +118,6 @@ static void __init __execmem_init(void)
info->ranges[EXECMEM_DEFAULT].end = VMALLOC_END;
info->ranges[EXECMEM_DEFAULT].pgprot = PAGE_KERNEL_EXEC;
info->ranges[EXECMEM_DEFAULT].alignment = 1;
- return;
}
if (!execmem_validate(info))
> Best regards,
> Liviu
--
Sincerely yours,
Mike.
WARNING: multiple messages have this Message-ID (diff)
From: Mike Rapoport <rppt@kernel.org>
To: Liviu Dudau <liviu@dudau.co.uk>
Cc: "Luis Chamberlain" <mcgrof@kernel.org>,
linux-kernel@vger.kernel.org,
"Alexandre Ghiti" <alexghiti@rivosinc.com>,
"Andrew Morton" <akpm@linux-foundation.org>,
"Björn Töpel" <bjorn@kernel.org>,
"Catalin Marinas" <catalin.marinas@arm.com>,
"Christophe Leroy" <christophe.leroy@csgroup.eu>,
"David S. Miller" <davem@davemloft.net>,
"Dinh Nguyen" <dinguyen@kernel.org>,
"Donald Dutile" <ddutile@redhat.com>,
"Eric Chanudet" <echanude@redhat.com>,
"Heiko Carstens" <hca@linux.ibm.com>,
"Helge Deller" <deller@gmx.de>,
"Huacai Chen" <chenhuacai@kernel.org>,
"Kent Overstreet" <kent.overstreet@linux.dev>,
"Mark Rutland" <mark.rutland@arm.com>,
"Masami Hiramatsu" <mhiramat@kernel.org>,
"Michael Ellerman" <mpe@ellerman.id.au>,
"Nadav Amit" <nadav.amit@gmail.com>,
"Palmer Dabbelt" <palmer@dabbelt.com>,
"Peter Zijlstra" <peterz@infradead.org>,
"Philippe Mathieu-Daudé" <philmd@linaro.org>,
"Rick Edgecombe" <rick.p.edgecombe@intel.com>,
"Russell King" <linux@armlinux.org.uk>,
"Sam Ravnborg" <sam@ravnborg.org>, "Song Liu" <song@kernel.org>,
"Steven Rostedt" <rostedt@goodmis.org>,
"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Will Deacon" <will@kernel.org>,
bpf@vger.kernel.org, linux-arch@vger.kernel.org,
linux-arm-kernel@lists.infradead.org, linux-mips@vger.kernel.org,
linux-mm@kvack.org, linux-modules@vger.kernel.org,
linux-parisc@vger.kernel.org, linux-riscv@lists.infradead.org,
linux-s390@vger.kernel.org, linux-trace-kernel@vger.kernel.org,
linuxppc-dev@lists.ozlabs.org, loongarch@lists.linux.dev,
netdev@vger.kernel.org, sparclinux@vger.kernel.org,
x86@kernel.org
Subject: Re: [PATCH v7 00/16] mm: jit/text allocator
Date: Fri, 3 May 2024 09:28:25 +0300 [thread overview]
Message-ID: <ZjSECeooxZELXSC1@kernel.org> (raw)
In-Reply-To: <ZjQuggSFcO8FXSd2@bart.dudau.co.uk>
On Fri, May 03, 2024 at 01:23:30AM +0100, Liviu Dudau wrote:
> On Thu, May 02, 2024 at 04:07:05PM -0700, Luis Chamberlain wrote:
> > On Thu, May 02, 2024 at 11:50:36PM +0100, Liviu Dudau wrote:
> > > On Mon, Apr 29, 2024 at 09:29:20AM -0700, Luis Chamberlain wrote:
> > > > On Mon, Apr 29, 2024 at 03:16:04PM +0300, Mike Rapoport wrote:
> > > > > From: "Mike Rapoport (IBM)" <rppt@kernel.org>
> > > > >
> > > > > Hi,
> > > > >
> > > > > The patches are also available in git:
> > > > > https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git/log/?h=execmem/v7
> > > > >
> > > > > v7 changes:
> > > > > * define MODULE_{VADDR,END} for riscv32 to fix the build and avoid
> > > > > #ifdefs in a function body
> > > > > * add Acks, thanks everybody
> > > >
> > > > Thanks, I've pushed this to modules-next for further exposure / testing.
> > > > Given the status of testing so far with prior revisions, in that only a
> > > > few issues were found and that those were fixed, and the status of
> > > > reviews, this just might be ripe for v6.10.
> > >
> > > Looks like there is still some work needed. I've picked up next-20240501
> > > and on arch/mips with CONFIG_MODULE_COMPRESS_XZ=y and CONFIG_MODULE_DECOMPRESS=y
> > > I fail to load any module:
> > >
> > > # modprobe rfkill
> > > [11746.539090] Invalid ELF header magic: != ELF
> > > [11746.587149] execmem: unable to allocate memory
> > > modprobe: can't load module rfkill (kernel/net/rfkill/rfkill.ko.xz): Out of memory
> > >
> > > The (hopefully) relevant parts of my .config:
> >
> > Thanks for the report! Any chance we can get you to try a bisection? I
> > think it should take 2-3 test boots. To help reduce scope you try modules-next:
> >
> > https://git.kernel.org/pub/scm/linux/kernel/git/mcgrof/linux.git/log/?h=modules-next
> >
> > Then can you check by resetting your tree to commmit 3fbe6c2f820a76 (mm:
> > introduce execmem_alloc() and execmem_free()"). I suspect that should
> > boot, so your bad commit would be the tip 3c2c250cb3a5fbb ("bpf: remove
> > CONFIG_BPF_JIT dependency on CONFIG_MODULES of").
> >
> > That gives us only a few commits to bisect:
> >
> > git log --oneline 3fbe6c2f820a76bc36d5546bda85832f57c8fce2..
> > 3c2c250cb3a5 (HEAD -> modules-next, korg/modules-next) bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
> > 11e8e65cce5c kprobes: remove dependency on CONFIG_MODULES
> > e10cbc38697b powerpc: use CONFIG_EXECMEM instead of CONFIG_MODULES where appropriate
> > 4da3d38f24c5 x86/ftrace: enable dynamic ftrace without CONFIG_MODULES
> > 13ae3d74ee70 arch: make execmem setup available regardless of CONFIG_MODULES
> > 460bbbc70a47 powerpc: extend execmem_params for kprobes allocations
> > e1a14069b5b4 arm64: extend execmem_info for generated code allocations
> > 971e181c6585 riscv: extend execmem_params for generated code allocations
> > 0fa276f26721 mm/execmem, arch: convert remaining overrides of module_alloc to execmem
> > 022cef244287 mm/execmem, arch: convert simple overrides of module_alloc to execmem
> >
> > With 2-3 boots we should be to tell which is the bad commit.
>
> Looks like 0fa276f26721 is the first bad commit.
>
> $ git bisect log
> # bad: [3c2c250cb3a5fbbccc4a4ff4c9354c54af91f02c] bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of
> # good: [3fbe6c2f820a76bc36d5546bda85832f57c8fce2] mm: introduce execmem_alloc() and execmem_free()
> git bisect start '3c2c250cb3a5' '3fbe6c2f820a76'
> # bad: [460bbbc70a47e929b1936ca68979f3b79f168fc6] powerpc: extend execmem_params for kprobes allocations
> git bisect bad 460bbbc70a47e929b1936ca68979f3b79f168fc6
> # bad: [0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e] mm/execmem, arch: convert remaining overrides of module_alloc to execmem
> git bisect bad 0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e
> # good: [022cef2442870db738a366d3b7a636040c081859] mm/execmem, arch: convert simple overrides of module_alloc to execmem
> git bisect good 022cef2442870db738a366d3b7a636040c081859
> # first bad commit: [0fa276f26721e0ffc2ae9c7cf67dcc005b43c67e] mm/execmem, arch: convert remaining overrides of module_alloc to execmem
>
> Maybe MIPS also needs a ARCH_WANTS_EXECMEM_LATE?
I don't think so. It rather seems there's a bug in the initialization of
the defaults in execmem. This should fix it:
diff --git a/mm/execmem.c b/mm/execmem.c
index f6dc3fabc1ca..0c4b36bc6d10 100644
--- a/mm/execmem.c
+++ b/mm/execmem.c
@@ -118,7 +118,6 @@ static void __init __execmem_init(void)
info->ranges[EXECMEM_DEFAULT].end = VMALLOC_END;
info->ranges[EXECMEM_DEFAULT].pgprot = PAGE_KERNEL_EXEC;
info->ranges[EXECMEM_DEFAULT].alignment = 1;
- return;
}
if (!execmem_validate(info))
> Best regards,
> Liviu
--
Sincerely yours,
Mike.
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2024-05-03 6:30 UTC|newest]
Thread overview: 96+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-29 12:16 [PATCH v7 00/16] mm: jit/text allocator Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 01/16] arm64: module: remove unneeded call to kasan_alloc_module_shadow() Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 02/16] mips: module: rename MODULE_START to MODULES_VADDR Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 03/16] nios2: define virtual address space for modules Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 04/16] sparc: simplify module_alloc() Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 05/16] module: make module_memory_{alloc,free} more self-contained Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-30 12:41 ` Philippe Mathieu-Daudé
2024-04-30 12:41 ` Philippe Mathieu-Daudé
2024-04-30 12:41 ` Philippe Mathieu-Daudé
2024-04-30 12:41 ` Philippe Mathieu-Daudé
2024-04-29 12:16 ` [PATCH v7 06/16] mm: introduce execmem_alloc() and execmem_free() Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 07/16] mm/execmem, arch: convert simple overrides of module_alloc to execmem Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 08/16] mm/execmem, arch: convert remaining " Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 09/16] riscv: extend execmem_params for generated code allocations Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 10/16] arm64: extend execmem_info " Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 11/16] powerpc: extend execmem_params for kprobes allocations Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 12/16] arch: make execmem setup available regardless of CONFIG_MODULES Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 13/16] x86/ftrace: enable dynamic ftrace without CONFIG_MODULES Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 14/16] powerpc: use CONFIG_EXECMEM instead of CONFIG_MODULES where appropriate Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 15/16] kprobes: remove dependency on CONFIG_MODULES Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` [PATCH v7 16/16] bpf: remove CONFIG_BPF_JIT dependency on CONFIG_MODULES of Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 12:16 ` Mike Rapoport
2024-04-29 16:29 ` [PATCH v7 00/16] mm: jit/text allocator Luis Chamberlain
2024-04-29 16:29 ` Luis Chamberlain
2024-04-29 16:29 ` Luis Chamberlain
2024-04-29 16:29 ` Luis Chamberlain
2024-05-02 22:50 ` Liviu Dudau
2024-05-02 22:50 ` Liviu Dudau
2024-05-02 22:50 ` Liviu Dudau
2024-05-02 22:50 ` Liviu Dudau
2024-05-02 23:07 ` Luis Chamberlain
2024-05-02 23:07 ` Luis Chamberlain
2024-05-02 23:07 ` Luis Chamberlain
2024-05-02 23:07 ` Luis Chamberlain
2024-05-03 0:23 ` Liviu Dudau
2024-05-03 0:23 ` Liviu Dudau
2024-05-03 0:23 ` Liviu Dudau
2024-05-03 0:23 ` Liviu Dudau
2024-05-03 6:28 ` Mike Rapoport [this message]
2024-05-03 6:28 ` Mike Rapoport
2024-05-03 6:28 ` Mike Rapoport
2024-05-03 6:28 ` Mike Rapoport
2024-05-03 10:40 ` Liviu Dudau
2024-05-03 10:40 ` Liviu Dudau
2024-05-03 10:40 ` Liviu Dudau
2024-05-03 10:40 ` Liviu Dudau
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=ZjSECeooxZELXSC1@kernel.org \
--to=rppt@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=alexghiti@rivosinc.com \
--cc=bjorn@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=catalin.marinas@arm.com \
--cc=chenhuacai@kernel.org \
--cc=christophe.leroy@csgroup.eu \
--cc=davem@davemloft.net \
--cc=ddutile@redhat.com \
--cc=deller@gmx.de \
--cc=dinguyen@kernel.org \
--cc=echanude@redhat.com \
--cc=hca@linux.ibm.com \
--cc=kent.overstreet@linux.dev \
--cc=linux-arch@vger.kernel.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mips@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=linux-modules@vger.kernel.org \
--cc=linux-parisc@vger.kernel.org \
--cc=linux-riscv@lists.infradead.org \
--cc=linux-s390@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=liviu@dudau.co.uk \
--cc=loongarch@lists.linux.dev \
--cc=mark.rutland@arm.com \
--cc=mcgrof@kernel.org \
--cc=mhiramat@kernel.org \
--cc=mpe@ellerman.id.au \
--cc=nadav.amit@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=palmer@dabbelt.com \
--cc=peterz@infradead.org \
--cc=philmd@linaro.org \
--cc=rick.p.edgecombe@intel.com \
--cc=rostedt@goodmis.org \
--cc=sam@ravnborg.org \
--cc=song@kernel.org \
--cc=sparclinux@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=tsbogend@alpha.franken.de \
--cc=will@kernel.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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.