From 5b70104bf16aa2abbcfd50ad9479389a62c79d87 Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Sat, 30 Sep 2017 11:06:16 +0800 Subject: linux-yocto: make bbappend have effect conditionally Make these bbappend files to take effect only when DISTRO_FEATURES contain 'virtualization'. Otherwise, we would meet failure failure at system booting up qemux86. Related logs are as below. systemd-modules-load[113]: Failed to insert 'kvm_amd': Operation not supported systemd-modules-load[113]: Failed to insert 'kvm_intel': Operation not supported Also, make kvm related settings depend on the 'kvm' distro feature. Signed-off-by: Chen Qi Signed-off-by: Bruce Ashfield --- recipes-kernel/linux/linux-yocto_4.10.bbappend | 21 +-------------------- recipes-kernel/linux/linux-yocto_4.12.bbappend | 21 +-------------------- recipes-kernel/linux/linux-yocto_4.4.bbappend | 21 +-------------------- recipes-kernel/linux/linux-yocto_4.9.bbappend | 21 +-------------------- recipes-kernel/linux/linux-yocto_virtualization.inc | 20 ++++++++++++++++++++ 5 files changed, 24 insertions(+), 80 deletions(-) create mode 100644 recipes-kernel/linux/linux-yocto_virtualization.inc diff --git a/recipes-kernel/linux/linux-yocto_4.10.bbappend b/recipes-kernel/linux/linux-yocto_4.10.bbappend index f163fdfc..617caccb 100644 --- a/recipes-kernel/linux/linux-yocto_4.10.bbappend +++ b/recipes-kernel/linux/linux-yocto_4.10.bbappend @@ -1,20 +1 @@ -FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" - -SRC_URI += "file://xt-checksum.scc \ - file://ebtables.scc \ - file://vswitch.scc \ - file://lxc.scc \ - file://docker.scc \ - " -KERNEL_FEATURES_append = " features/kvm/qemu-kvm-enable.scc" - -KERNEL_MODULE_AUTOLOAD += "openvswitch" -KERNEL_MODULE_AUTOLOAD += "kvm" -KERNEL_MODULE_AUTOLOAD += "kvm-amd" -KERNEL_MODULE_AUTOLOAD += "kvm-intel" - -# aufs kernel support required for xen-image-minimal -KERNEL_FEATURES_append += "${@bb.utils.contains('DISTRO_FEATURES', 'aufs', ' features/aufs/aufs-enable.scc', '', d)}" - -# xen kernel support -SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'xen', ' file://xen.scc', '', d)}" +require ${@bb.utils.contains('DISTRO_FEATURES', 'virtualization', '${BPN}_virtualization.inc', '', d)} diff --git a/recipes-kernel/linux/linux-yocto_4.12.bbappend b/recipes-kernel/linux/linux-yocto_4.12.bbappend index f163fdfc..617caccb 100644 --- a/recipes-kernel/linux/linux-yocto_4.12.bbappend +++ b/recipes-kernel/linux/linux-yocto_4.12.bbappend @@ -1,20 +1 @@ -FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" - -SRC_URI += "file://xt-checksum.scc \ - file://ebtables.scc \ - file://vswitch.scc \ - file://lxc.scc \ - file://docker.scc \ - " -KERNEL_FEATURES_append = " features/kvm/qemu-kvm-enable.scc" - -KERNEL_MODULE_AUTOLOAD += "openvswitch" -KERNEL_MODULE_AUTOLOAD += "kvm" -KERNEL_MODULE_AUTOLOAD += "kvm-amd" -KERNEL_MODULE_AUTOLOAD += "kvm-intel" - -# aufs kernel support required for xen-image-minimal -KERNEL_FEATURES_append += "${@bb.utils.contains('DISTRO_FEATURES', 'aufs', ' features/aufs/aufs-enable.scc', '', d)}" - -# xen kernel support -SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'xen', ' file://xen.scc', '', d)}" +require ${@bb.utils.contains('DISTRO_FEATURES', 'virtualization', '${BPN}_virtualization.inc', '', d)} diff --git a/recipes-kernel/linux/linux-yocto_4.4.bbappend b/recipes-kernel/linux/linux-yocto_4.4.bbappend index f163fdfc..617caccb 100644 --- a/recipes-kernel/linux/linux-yocto_4.4.bbappend +++ b/recipes-kernel/linux/linux-yocto_4.4.bbappend @@ -1,20 +1 @@ -FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" - -SRC_URI += "file://xt-checksum.scc \ - file://ebtables.scc \ - file://vswitch.scc \ - file://lxc.scc \ - file://docker.scc \ - " -KERNEL_FEATURES_append = " features/kvm/qemu-kvm-enable.scc" - -KERNEL_MODULE_AUTOLOAD += "openvswitch" -KERNEL_MODULE_AUTOLOAD += "kvm" -KERNEL_MODULE_AUTOLOAD += "kvm-amd" -KERNEL_MODULE_AUTOLOAD += "kvm-intel" - -# aufs kernel support required for xen-image-minimal -KERNEL_FEATURES_append += "${@bb.utils.contains('DISTRO_FEATURES', 'aufs', ' features/aufs/aufs-enable.scc', '', d)}" - -# xen kernel support -SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'xen', ' file://xen.scc', '', d)}" +require ${@bb.utils.contains('DISTRO_FEATURES', 'virtualization', '${BPN}_virtualization.inc', '', d)} diff --git a/recipes-kernel/linux/linux-yocto_4.9.bbappend b/recipes-kernel/linux/linux-yocto_4.9.bbappend index f163fdfc..617caccb 100644 --- a/recipes-kernel/linux/linux-yocto_4.9.bbappend +++ b/recipes-kernel/linux/linux-yocto_4.9.bbappend @@ -1,20 +1 @@ -FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" - -SRC_URI += "file://xt-checksum.scc \ - file://ebtables.scc \ - file://vswitch.scc \ - file://lxc.scc \ - file://docker.scc \ - " -KERNEL_FEATURES_append = " features/kvm/qemu-kvm-enable.scc" - -KERNEL_MODULE_AUTOLOAD += "openvswitch" -KERNEL_MODULE_AUTOLOAD += "kvm" -KERNEL_MODULE_AUTOLOAD += "kvm-amd" -KERNEL_MODULE_AUTOLOAD += "kvm-intel" - -# aufs kernel support required for xen-image-minimal -KERNEL_FEATURES_append += "${@bb.utils.contains('DISTRO_FEATURES', 'aufs', ' features/aufs/aufs-enable.scc', '', d)}" - -# xen kernel support -SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'xen', ' file://xen.scc', '', d)}" +require ${@bb.utils.contains('DISTRO_FEATURES', 'virtualization', '${BPN}_virtualization.inc', '', d)} diff --git a/recipes-kernel/linux/linux-yocto_virtualization.inc b/recipes-kernel/linux/linux-yocto_virtualization.inc new file mode 100644 index 00000000..9905ed9b --- /dev/null +++ b/recipes-kernel/linux/linux-yocto_virtualization.inc @@ -0,0 +1,20 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/linux-yocto:" + +SRC_URI += "file://xt-checksum.scc \ + file://ebtables.scc \ + file://vswitch.scc \ + file://lxc.scc \ + file://docker.scc \ + " +KERNEL_FEATURES_append = " ${@bb.utils.contains('DISTRO_FEATURES', 'kvm', 'features/kvm/qemu-kvm-enable.scc', '', d)}" + +KERNEL_MODULE_AUTOLOAD += "openvswitch" +KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains('DISTRO_FEATURES', 'kvm', 'kvm', '', d)}" +KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains('DISTRO_FEATURES', 'kvm', 'kvm-amd', '', d)}" +KERNEL_MODULE_AUTOLOAD += "${@bb.utils.contains('DISTRO_FEATURES', 'kvm', 'kvm-intel', '', d)}" + +# aufs kernel support required for xen-image-minimal +KERNEL_FEATURES_append += "${@bb.utils.contains('DISTRO_FEATURES', 'aufs', ' features/aufs/aufs-enable.scc', '', d)}" + +# xen kernel support +SRC_URI += "${@bb.utils.contains('DISTRO_FEATURES', 'xen', ' file://xen.scc', '', d)}" -- cgit v1.2.3-54-g00ecf