From 1c6aae1e15a8540564d3688f5c3fd6578ac9703b Mon Sep 17 00:00:00 2001 From: Alice Frosi Date: Tue, 14 Apr 2020 16:17:20 +0200 Subject: [PATCH] fragments: skip some config base on the arch Not all the fragments in common are needed by all the arch. The fragment can be skipped if the have the tag !arch. For example: # !s390x Fixes: #1010 Signed-off-by: Alice Frosi --- kernel/build-kernel.sh | 6 ++++-- kernel/kata_config_version | 2 +- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/kernel/build-kernel.sh b/kernel/build-kernel.sh index a362508962..40d08ebd53 100755 --- a/kernel/build-kernel.sh +++ b/kernel/build-kernel.sh @@ -181,11 +181,13 @@ get_kernel_frag_path() { local gpu_path="${arch_path}/../gpu" local kernel_path="$2" + local arch="$3" local cmdpath="${kernel_path}/scripts/kconfig/merge_config.sh" local config_path="${arch_path}/.config" local arch_configs="$(ls ${arch_path}/*.conf)" - local common_configs="$(ls ${common_path}/*.conf)" + # Exclude configs if they have !$arch tag in the header + local common_configs="$(grep "\!${arch}" ${common_path}/*.conf -L)" local experimental_configs="$(ls ${common_path}/experimental/*.conf)" # These are the strings that the kernel merge_config.sh script kicks out @@ -275,7 +277,7 @@ get_default_kernel_config() { archfragdir="${default_config_frags_dir}/${kernel_arch}" if [ -d "${archfragdir}" ]; then - config="$(get_kernel_frag_path ${archfragdir} ${kernel_path})" + config="$(get_kernel_frag_path ${archfragdir} ${kernel_path} ${kernel_arch})" else [ "${hypervisor}" == "firecracker" ] && hypervisor="kvm" config="${default_kernel_config_dir}/${kernel_arch}_kata_${hypervisor}_${major_kernel}.x" diff --git a/kernel/kata_config_version b/kernel/kata_config_version index 8e14edce9c..85322d0b54 100644 --- a/kernel/kata_config_version +++ b/kernel/kata_config_version @@ -1 +1 @@ -78 +79