Linux: Clear CONFIG_INITRAMFS_SOURCE if BR2_TARGET_ROOTFS_INITRAMFS is not set
PATCH 1/1 Linux: Clear CONFIG_INITRAMFS_SOURCE if BR2_TARGET_ROOTFS_INITRAMFS is not set
This patch makes sure CONFIG_INITRAMFS_SOURCE option gets reset
when BR2_TARGET_ROOTFS_INITRAMFS is not set. Some kernel defconfigs,
for example for ARC processors, set CONFIG_INITRAMFS_SOURCE value, which cause such error:
"./scripts/gen_initramfs_list.sh: Cannot open '../../arc_initramfs_hs/'"
--- linux/linux.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
linux/linux.mk +2 -1
@@ -269,7 +269,8 @@ define LINUX_KCONFIG_FIXUP_CMDS touch $(BINARIES_DIR)/rootfs.cpio $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_SOURCE,"$${BR_BINARIES_DIR}/rootfs.cpio",$(@D)/.config) $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_UID,0,$(@D)/.config) - $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_GID,0,$(@D)/.config)) + $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_GID,0,$(@D)/.config), + $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_SOURCE,"",$(@D)/.config)) $(if $(BR2_ROOTFS_DEVICE_CREATION_STATIC),, $(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS,$(@D)/.config) $(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS_MOUNT,$(@D)/.config))
Signature · 1 line
2.9.3
PATCH 1/1 Linux: Clear CONFIG_INITRAMFS_SOURCE if BR2_TARGET_ROOTFS_INITRAMFS is not set
Quoted 6 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Evgeniy" == Evgeniy Didin <[email protected]> writes:
This patch makes sure
CONFIG_INITRAMFS_SOURCEoption gets reset
whenBR2_TARGET_ROOTFS_INITRAMFSis not set. Some kernel defconfigs,
for example for ARC processors, setCONFIG_INITRAMFS_SOURCEvalue, which cause such error:
"./scripts/gen_initramfs_list.sh: Cannot open '../../arc_initramfs_hs/'"
I'm not sure. I really would like to keep our "magic" .config fixups to a minimum as they are kind of hidden and force specific use cases without any options of disabling it (E.G. perhaps somebody has a prebuilt initramfs they would like to include even though buildroot builds the real rootfs (so BR2_TARGET_ROOTFS_INITRAMFS is not set). With this change, this is no longer possible.
Couldn't you fix these arc specific defconfig issues with a small kconfig fragment instead?
Quoted 30 lines
Signed-off-by Evgeniy Didin <[email protected]>CC Alexey Brodkin <[email protected]>Cc arc-buildroot at synopsys.comCc Thomas Petazzoni <[email protected]>--- linux/linux.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)linux/linux.mk +2
-1@@ -269,7 +269,8 @@ define LINUX_KCONFIG_FIXUP_CMDS touch $(BINARIES_DIR)/rootfs.cpio $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_SOURCE,"$${BR_BINARIES_DIR}/rootfs.cpio",$(@D)/.config) $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_UID,0,$(@D)/.config) - $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_GID,0,$(@D)/.config)) + $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_ROOT_GID,0,$(@D)/.config), + $(call KCONFIG_SET_OPT,CONFIG_INITRAMFS_SOURCE,"",$(@D)/.config)) $(if $(BR2_ROOTFS_DEVICE_CREATION_STATIC),, $(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS,$(@D)/.config) $(call KCONFIG_ENABLE_OPT,CONFIG_DEVTMPFS_MOUNT,$(@D)/.config))Signature · 6 lines
2.9.3 _______________________________________________ buildroot mailing list buildroot at busybox.net http://lists.busybox.net/mailman/listinfo/buildroot
Signature · 1 line
Bye, Peter Korsgaard
PATCH 1/1 Linux: Clear CONFIG_INITRAMFS_SOURCE if BR2_TARGET_ROOTFS_INITRAMFS is not set
Hi Peter,
Quoted 12 lines · Peter Korsgaard
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
Quoted 6 lines
"Evgeniy" == Evgeniy Didin <[email protected]> writes:
?> This patch makes sure
CONFIG_INITRAMFS_SOURCEoption gets reset
?> whenBR2_TARGET_ROOTFS_INITRAMFSis not set. Some kernel defconfigs,?
?> for example for ARC processors, setCONFIG_INITRAMFS_SOURCEvalue, which cause such error:
?> "./scripts/gen_initramfs_list.sh: Cannot open '../../arc_initramfs_hs/'"
Quoted 6 lines
I'm not sure. I really would like to keep our "magic" .config fixups to a minimum as they are kind of hidden and force specific use cases without any options of disabling it (E.G. perhaps somebody has a prebuilt initramfs they would like to include even though buildroot builds the real rootfs (so
BR2_TARGET_ROOTFS_INITRAMFSis not set). With this change, this is no longer possible.
Well a couple of things I was thinking about:
1. This would be [in my view] just a complimentary option to setting BR's rootfs.
2. Usage of prebuilt initramf with BR might be quite a tricky thing because ? ?different toolchain could be used with different ABI, libc etc so chances ? ?are quite high that user-space stuff built with BR will be incompatible with ? ?contents of prebuilt rootfs. But I guess we cannot stop people from doing that.
Quoted 2 lines
Couldn't you fix these arc specific defconfig issues with a small kconfig fragment instead?
So maybe this is indeed a bit better solution even though we know nobody who'd do such a trick with pre-built initramfs.
-Alexey
PATCH 1/1 Linux: Clear CONFIG_INITRAMFS_SOURCE if BR2_TARGET_ROOTFS_INITRAMFS is not set
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Alexey" == Alexey Brodkin <[email protected]> writes:
Hi,
Quoted 6 lines
Well a couple of things I was thinking about:
1. This would be [in my view] just a complimentary option to setting BR's rootfs.
2. Usage of prebuilt initramf with BR might be quite a tricky thing because ? ?different toolchain could be used with different ABI, libc etc so chances ? ?are quite high that user-space stuff built with BR will be incompatible with ? ?contents of prebuilt rootfs. But I guess we cannot stop people from doing that.
Correct, but that is in reality not so difficult to do as the kernel ABI is stable, and most architectures have stable ABIs. Libc doesn't enter the question as the initramfs typically will not use files from the rootfs or the other way around.
Quoted 5 lines
Quoted 2 lines
Couldn't you fix these arc specific defconfig issues with a small kconfig fragment instead?
So maybe this is indeed a bit better solution even though we know nobody who'd do such a trick with pre-built initramfs.
I do ;) I am using an external initramfs instead of built into the kernel though, but that is just a minor detail.
Signature · 1 line
Bye, Peter Korsgaard