mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m
@ 2020-05-18 17:54 Masahiro Yamada
  2020-05-18 17:54 ` [PATCH 2/2] kbuild: build modules by 'make' Masahiro Yamada
  2020-05-18 18:24 ` [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m Masahiro Yamada
  0 siblings, 2 replies; 4+ messages in thread
From: Masahiro Yamada @ 2020-05-18 17:54 UTC (permalink / raw)
  To: barebox; +Cc: Masahiro Yamada

Since commit 18895514dc5e ("kconfig: update to v3.18-rc6"), tristate
symbols cannot become 'm'.

In old days of Linux, CONFIG_MODULES was the special hard-coded in
Kconfig.

The current Kconfig does not know which option is it. You need to
specify 'option modules' to teach Kconfig that it is the module
support switch.

Add 'option modules' to revive the module builds.

Fixes: 18895514dc5e ("kconfig: update to v3.18-rc6")
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

The module feature has been broken for 8 years,
and nobody has pointed it out...

 common/Kconfig | 1 +
 1 file changed, 1 insertion(+)

diff --git a/common/Kconfig b/common/Kconfig
index 460ac487c..7a99d20bf 100644
--- a/common/Kconfig
+++ b/common/Kconfig
@@ -316,6 +316,7 @@ config MODULES
 	depends on HAS_MODULES
 	depends on EXPERIMENTAL
 	bool "module support"
+	option modules
 	help
 	  This option enables support for loadable modules via insmod. Module
 	  support is quite experimental at the moment. There is no convenient
-- 
2.25.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [PATCH 2/2] kbuild: build modules by 'make'
  2020-05-18 17:54 [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m Masahiro Yamada
@ 2020-05-18 17:54 ` Masahiro Yamada
  2020-05-18 18:24 ` [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m Masahiro Yamada
  1 sibling, 0 replies; 4+ messages in thread
From: Masahiro Yamada @ 2020-05-18 17:54 UTC (permalink / raw)
  To: barebox; +Cc: Masahiro Yamada

In Linux, 'make' and 'make all' work equivalently; it builds both
vmlinux and modules.

In barebox, strangely, 'make all' builds both barebox and modules,
but 'make' builds only barebox because KBUILD_MODULES is unset.

The check for 'ifeq ($(MAKECMDGOALS),)' is missing since the day-one.

Fixes: b02e0966412c ("add additional linking stage for modules")
Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
---

 Makefile | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/Makefile b/Makefile
index d477494d6..9f30fafdd 100644
--- a/Makefile
+++ b/Makefile
@@ -533,6 +533,10 @@ ifneq ($(filter all _all modules,$(MAKECMDGOALS)),)
   KBUILD_MODULES := 1
 endif
 
+ifeq ($(MAKECMDGOALS),)
+  KBUILD_MODULES := 1
+endif
+
 export KBUILD_MODULES KBUILD_BUILTIN
 
 ifdef need-config
-- 
2.25.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m
  2020-05-18 17:54 [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m Masahiro Yamada
  2020-05-18 17:54 ` [PATCH 2/2] kbuild: build modules by 'make' Masahiro Yamada
@ 2020-05-18 18:24 ` Masahiro Yamada
  2020-05-20 11:09   ` Sascha Hauer
  1 sibling, 1 reply; 4+ messages in thread
From: Masahiro Yamada @ 2020-05-18 18:24 UTC (permalink / raw)
  To: Barebox List

On Tue, May 19, 2020 at 2:55 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
>
> Since commit 18895514dc5e ("kconfig: update to v3.18-rc6"), tristate
> symbols cannot become 'm'.
>
> In old days of Linux, CONFIG_MODULES was the special hard-coded in
> Kconfig.


Please reword this paragraph as follows:


In old days of Linux, CONFIG_MODULES was the special option hard-coded
in Kconfig.



>
> The current Kconfig does not know which option is it. You need to
> specify 'option modules' to teach Kconfig that it is the module
> support switch.
>
> Add 'option modules' to revive the module builds.
>
> Fixes: 18895514dc5e ("kconfig: update to v3.18-rc6")
> Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
> ---
>
> The module feature has been broken for 8 years,
> and nobody has pointed it out...
>
>  common/Kconfig | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/common/Kconfig b/common/Kconfig
> index 460ac487c..7a99d20bf 100644
> --- a/common/Kconfig
> +++ b/common/Kconfig
> @@ -316,6 +316,7 @@ config MODULES
>         depends on HAS_MODULES
>         depends on EXPERIMENTAL
>         bool "module support"
> +       option modules
>         help
>           This option enables support for loadable modules via insmod. Module
>           support is quite experimental at the moment. There is no convenient
> --
> 2.25.1
>


-- 
Best Regards
Masahiro Yamada

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m
  2020-05-18 18:24 ` [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m Masahiro Yamada
@ 2020-05-20 11:09   ` Sascha Hauer
  0 siblings, 0 replies; 4+ messages in thread
From: Sascha Hauer @ 2020-05-20 11:09 UTC (permalink / raw)
  To: Masahiro Yamada; +Cc: Barebox List

On Tue, May 19, 2020 at 03:24:50AM +0900, Masahiro Yamada wrote:
> On Tue, May 19, 2020 at 2:55 AM Masahiro Yamada <masahiroy@kernel.org> wrote:
> >
> > Since commit 18895514dc5e ("kconfig: update to v3.18-rc6"), tristate
> > symbols cannot become 'm'.
> >
> > In old days of Linux, CONFIG_MODULES was the special hard-coded in
> > Kconfig.
> 
> 
> Please reword this paragraph as follows:
> 
> 
> In old days of Linux, CONFIG_MODULES was the special option hard-coded
> in Kconfig.

Reworded and applied, thanks

Sascha

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2020-05-20 11:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-18 17:54 [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m Masahiro Yamada
2020-05-18 17:54 ` [PATCH 2/2] kbuild: build modules by 'make' Masahiro Yamada
2020-05-18 18:24 ` [PATCH 1/2] kconfig: add 'option modules' to allow tristate options to become m Masahiro Yamada
2020-05-20 11:09   ` Sascha Hauer

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox