Hi all,
After merging the mm tree, today's linux-next build (x86_64 allnoconfig)
failed like this:
x86_64-linux-gnu-ld: init/main.o: in function `kernel_init':
main.c:(.ref.text+0xbf): undefined reference to `flush_module_init_free_work'
Caused by commit
1d8053432676 ("modules: wait do_free_init correctly")
This build has
# CONFIG_MODULES is not set
I have applied this (hack) patch for today.
From: Stephen Rothwell <[email protected]>
Date: Thu, 21 Dec 2023 18:27:07 +1100
Subject: [PATCH] fix up for "modules: wait do_free_init correctly"
Signed-off-by: Stephen Rothwell <[email protected]>
---
init/main.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/init/main.c b/init/main.c
index f0b7e21ac67f..1df1106ff09b 100644
--- a/init/main.c
+++ b/init/main.c
@@ -1407,7 +1407,9 @@ static void mark_readonly(void)
* flushed so that we don't hit false positives looking for
* insecure pages which are W+X.
*/
+#ifdef CONFIG_MODULES
flush_module_init_free_work();
+#endif
mark_rodata_ro();
rodata_test();
} else
--
2.43.0
--
Cheers,
Stephen Rothwell
Hi, Rothwell,
Please hold this patch. It need more discussion and probably the flush can be
simply removed.
On Thu, Dec 21, 2023 at 06:38:03PM +1100, Stephen Rothwell wrote:
> Hi all,
>
> After merging the mm tree, today's linux-next build (x86_64 allnoconfig)
> failed like this:
>
> x86_64-linux-gnu-ld: init/main.o: in function `kernel_init':
> main.c:(.ref.text+0xbf): undefined reference to `flush_module_init_free_work'
>
> Caused by commit
>
> 1d8053432676 ("modules: wait do_free_init correctly")
>
> This build has
> # CONFIG_MODULES is not set
>
> I have applied this (hack) patch for today.
>
> From: Stephen Rothwell <[email protected]>
> Date: Thu, 21 Dec 2023 18:27:07 +1100
> Subject: [PATCH] fix up for "modules: wait do_free_init correctly"
>
> Signed-off-by: Stephen Rothwell <[email protected]>
> ---
> init/main.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/init/main.c b/init/main.c
> index f0b7e21ac67f..1df1106ff09b 100644
> --- a/init/main.c
> +++ b/init/main.c
> @@ -1407,7 +1407,9 @@ static void mark_readonly(void)
> * flushed so that we don't hit false positives looking for
> * insecure pages which are W+X.
> */
> +#ifdef CONFIG_MODULES
> flush_module_init_free_work();
> +#endif
> mark_rodata_ro();
> rodata_test();
> } else
> --
> 2.43.0
>
> --
> Cheers,
> Stephen Rothwell
--
Cheers,
Changbin Du