Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] [RFC] linux: add option to avoid kernel kconfig updates
@ 2015-10-19 18:02 gustavo.zacarias at free-electrons.com
  2015-10-20 20:53 ` Arnout Vandecappelle
  2015-12-29 18:43 ` Yann E. MORIN
  0 siblings, 2 replies; 3+ messages in thread
From: gustavo.zacarias at free-electrons.com @ 2015-10-19 18:02 UTC (permalink / raw)
  To: buildroot

From: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>

Some packages require specific kernel options enabled to be of any use,
however when building a kernel with a specific configuration intended
for binary-only modules this can be counterproductive.

Add an option to disable this behaviour and leave the .config alone.

Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
---
 linux/Config.in | 12 ++++++++++++
 linux/linux.mk  |  2 ++
 2 files changed, 14 insertions(+)

diff --git a/linux/Config.in b/linux/Config.in
index 99c8a0e..8c1b138 100644
--- a/linux/Config.in
+++ b/linux/Config.in
@@ -365,6 +365,18 @@ config BR2_LINUX_KERNEL_INSTALL_TARGET
 	  /boot if DTBs have been generated by the kernel build
 	  process.
 
+config BR2_LINUX_KERNEL_PACKAGES_ADJUST_CONFIG
+	bool "Adjust kernel configuration for package requirements"
+	default y
+	help
+	  Select this option if you want to allow packages to enable
+	  specific kernel options that are required for them to work
+	  properly.
+
+	  Normally you'd want this unless you're using precompiled
+	  binary-only modules that are tied to a specific kernel
+	  configuration via modversions.
+
 # Linux extensions
 source "linux/Config.ext.in"
 
diff --git a/linux/linux.mk b/linux/linux.mk
index 6c7ecfc..16eeb2c 100644
--- a/linux/linux.mk
+++ b/linux/linux.mk
@@ -176,6 +176,7 @@ LINUX_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_LINUX_KERNEL_CONFIG_FRAGMENT_
 LINUX_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
 LINUX_KCONFIG_OPTS = $(LINUX_MAKE_FLAGS)
 
+ifeq ($(BR2_LINUX_KERNEL_PACKAGES_ADJUST_CONFIG),y)
 define LINUX_KCONFIG_FIXUP_CMDS
 	$(if $(LINUX_NEEDS_MODULES),
 		$(call KCONFIG_ENABLE_OPT,CONFIG_MODULES,$(@D)/.config))
@@ -225,6 +226,7 @@ define LINUX_KCONFIG_FIXUP_CMDS
 	$(if $(BR2_LINUX_KERNEL_APPENDED_DTB),
 		$(call KCONFIG_ENABLE_OPT,CONFIG_ARM_APPENDED_DTB,$(@D)/.config))
 endef
+endif
 
 ifeq ($(BR2_LINUX_KERNEL_DTS_SUPPORT),y)
 ifeq ($(BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT),)
-- 
2.4.10

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

* [Buildroot] [PATCH] [RFC] linux: add option to avoid kernel kconfig updates
  2015-10-19 18:02 [Buildroot] [PATCH] [RFC] linux: add option to avoid kernel kconfig updates gustavo.zacarias at free-electrons.com
@ 2015-10-20 20:53 ` Arnout Vandecappelle
  2015-12-29 18:43 ` Yann E. MORIN
  1 sibling, 0 replies; 3+ messages in thread
From: Arnout Vandecappelle @ 2015-10-20 20:53 UTC (permalink / raw)
  To: buildroot

On 19-10-15 20:02, gustavo.zacarias at free-electrons.com wrote:
> From: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
> 
> Some packages require specific kernel options enabled to be of any use,
> however when building a kernel with a specific configuration intended
> for binary-only modules this can be counterproductive.

 Can you give a concrete example of this? The options that we set automatically
should only be options that are really required for building or running. So if
you don't set it, it's not going to work anyway. If there is some option that is
not really required, then we shouldn't be setting it.


 Regards,
 Arnout

> 
> Add an option to disable this behaviour and leave the .config alone.
> 
> Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
[snip]


-- 
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF

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

* [Buildroot] [PATCH] [RFC] linux: add option to avoid kernel kconfig updates
  2015-10-19 18:02 [Buildroot] [PATCH] [RFC] linux: add option to avoid kernel kconfig updates gustavo.zacarias at free-electrons.com
  2015-10-20 20:53 ` Arnout Vandecappelle
@ 2015-12-29 18:43 ` Yann E. MORIN
  1 sibling, 0 replies; 3+ messages in thread
From: Yann E. MORIN @ 2015-12-29 18:43 UTC (permalink / raw)
  To: buildroot

Gustavo, all,

On 2015-10-19 15:02 -0300, gustavo.zacarias at free-electrons.com spake thusly:
> From: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
> 
> Some packages require specific kernel options enabled to be of any use,
> however when building a kernel with a specific configuration intended
> for binary-only modules this can be counterproductive.
> 
> Add an option to disable this behaviour and leave the .config alone.

Following the discussion we had on IRC, and taking into account the
comments by Arnout, I've marked this as rejected.

(on IRC: it's because of proprietary modules that no longer want to
load/work because of ABI-changing options they were not built with.
Solution if to fix those suckers. ;-] )

Thanks!

Regards,
Yann E. MORIN.

> Signed-off-by: Gustavo Zacarias <gustavo.zacarias@free-electrons.com>
> ---
>  linux/Config.in | 12 ++++++++++++
>  linux/linux.mk  |  2 ++
>  2 files changed, 14 insertions(+)
> 
> diff --git a/linux/Config.in b/linux/Config.in
> index 99c8a0e..8c1b138 100644
> --- a/linux/Config.in
> +++ b/linux/Config.in
> @@ -365,6 +365,18 @@ config BR2_LINUX_KERNEL_INSTALL_TARGET
>  	  /boot if DTBs have been generated by the kernel build
>  	  process.
>  
> +config BR2_LINUX_KERNEL_PACKAGES_ADJUST_CONFIG
> +	bool "Adjust kernel configuration for package requirements"
> +	default y
> +	help
> +	  Select this option if you want to allow packages to enable
> +	  specific kernel options that are required for them to work
> +	  properly.
> +
> +	  Normally you'd want this unless you're using precompiled
> +	  binary-only modules that are tied to a specific kernel
> +	  configuration via modversions.
> +
>  # Linux extensions
>  source "linux/Config.ext.in"
>  
> diff --git a/linux/linux.mk b/linux/linux.mk
> index 6c7ecfc..16eeb2c 100644
> --- a/linux/linux.mk
> +++ b/linux/linux.mk
> @@ -176,6 +176,7 @@ LINUX_KCONFIG_FRAGMENT_FILES = $(call qstrip,$(BR2_LINUX_KERNEL_CONFIG_FRAGMENT_
>  LINUX_KCONFIG_EDITORS = menuconfig xconfig gconfig nconfig
>  LINUX_KCONFIG_OPTS = $(LINUX_MAKE_FLAGS)
>  
> +ifeq ($(BR2_LINUX_KERNEL_PACKAGES_ADJUST_CONFIG),y)
>  define LINUX_KCONFIG_FIXUP_CMDS
>  	$(if $(LINUX_NEEDS_MODULES),
>  		$(call KCONFIG_ENABLE_OPT,CONFIG_MODULES,$(@D)/.config))
> @@ -225,6 +226,7 @@ define LINUX_KCONFIG_FIXUP_CMDS
>  	$(if $(BR2_LINUX_KERNEL_APPENDED_DTB),
>  		$(call KCONFIG_ENABLE_OPT,CONFIG_ARM_APPENDED_DTB,$(@D)/.config))
>  endef
> +endif
>  
>  ifeq ($(BR2_LINUX_KERNEL_DTS_SUPPORT),y)
>  ifeq ($(BR2_LINUX_KERNEL_DTB_IS_SELF_BUILT),)
> -- 
> 2.4.10
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

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

end of thread, other threads:[~2015-12-29 18:43 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-10-19 18:02 [Buildroot] [PATCH] [RFC] linux: add option to avoid kernel kconfig updates gustavo.zacarias at free-electrons.com
2015-10-20 20:53 ` Arnout Vandecappelle
2015-12-29 18:43 ` Yann E. MORIN

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