mirror of
git://git.yoctoproject.org/meta-virtualization.git
synced 2025-07-05 05:15:25 +02:00
kernel: allow configuration to be skipped .. but warn
Allow the kernel include file to be skipped, even if a kernel is capable of merging and using the fragments in the layer and kernel-cache. Setting SKIP_META_VIRT_KERNEL_INCLUDE="t" in a kernel bbappend, or in a configuration file will inhibit the generated / detected include file. BUT If that opt-out is done, we warn, as the user has explicitly disabled safeguards that help ensure that subtle runtime issues aren't introduced. BUT If someone really knows what they are doing, they don't want the warning to be present in each build. So setting META_VIRT_KERNEL_CHECK_WARNING_INHIBIT="t" will inhibit the message. At that point, you have jumped through all the hoops and you are free to ensure your kernel configuration is correct using other means. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
This commit is contained in:
parent
f7bffb351c
commit
92a7e8ec46
|
@ -4,7 +4,35 @@
|
|||
LINUX_MAJOR = "${@(d.getVar('LINUX_VERSION') or "x.y").split('.')[0]}"
|
||||
LINUX_MINOR = "${@(d.getVar('LINUX_VERSION') or "x.y").split('.')[1]}"
|
||||
|
||||
|
||||
KERNEL_META_TYPE = "${@'yocto' if d.getVar('SRC_URI').find('type=kmeta') > 0 else 'none'}"
|
||||
KERNEL_META_TYPE = "${@'yocto' if d.getVar('SRC_URI').find('type=kmeta') > 0 and d.getVar('SKIP_META_VIRT_KERNEL_INCLUDE') == None else 'none'}"
|
||||
|
||||
include ${@bb.utils.contains('DISTRO_FEATURES', 'virtualization', 'linux-${KERNEL_META_TYPE}_${LINUX_MAJOR}.${LINUX_MINOR}_virtualization.inc', '', d)}
|
||||
|
||||
python __anonymous () {
|
||||
# Gather the variables
|
||||
virt_enabled = bb.utils.contains('DISTRO_FEATURES', 'virtualization', 'True', '', d )
|
||||
skip_kernel_include_enabled = d.getVar('SKIP_META_VIRT_KERNEL_INCLUDE')
|
||||
kmeta_type = d.getVar('SRC_URI').find('type=kmeta')
|
||||
inhibit_skip_kernel_check_warning = d.getVar('META_VIRT_KERNEL_CHECK_WARNING_INHIBIT')
|
||||
|
||||
#
|
||||
# We warn if:
|
||||
# - the kernel has the capability of merging fragments
|
||||
# - virtualiation is enabled
|
||||
# - and the user has decided to force skip the include
|
||||
#
|
||||
# .. because they have knowingly opted-out of our tested
|
||||
# kernel configurations, and need to be warned.
|
||||
#
|
||||
# BUT, it can also be annoying to get a warning when you
|
||||
# have explcitly opted out. So we have one more warning
|
||||
# that indicates that the impacts are understood and this
|
||||
# really is on purpse. If META_VIRT_KERNEL_CHECK_WARNING_INHIBIT
|
||||
# is set, we won't do the warning.
|
||||
#
|
||||
if virt_enabled and kmeta_type > 0 and skip_kernel_include_enabled:
|
||||
if not inhibit_skip_kernel_check_warning:
|
||||
bb.warn( "You have a kernel-yocto enabled kernel, but have inhibited \
|
||||
virtualization kernel features. Some runtime issues may be present in \
|
||||
your final image" )
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user