diff options
author | Bruce Ashfield <bruce.ashfield@windriver.com> | 2018-08-24 10:59:51 -0400 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-08-28 10:30:28 +0100 |
commit | c8bc6f29a775ea25611d835ff0c2760de41abf80 (patch) | |
tree | 18d643fb63ad0742bb8dc685429d12137813068c /meta/classes/kernel-yocto.bbclass | |
parent | f13ff77f4d8a3bd96d27152722f15edc3657d0c9 (diff) | |
download | poky-c8bc6f29a775ea25611d835ff0c2760de41abf80.tar.gz |
kernel-yocto: restore BSP audit visibility
During the re-working of kernel fragments and status output cleanup the
visibility for BSP level errors was dropped/removed.
The audit phase can detect errors, redefinition and invalid
configuration fragments. We control the visibility of these reports via
the existing KCONF_BSP_AUDIT_LEVEL variable.
By default, errors and invalid configuration values will be displayed as
a warning. If redefinition values are to be shown the audit level must
be raised above the deafult value of '2'. We inhibit these by default,
since there are many valid reasons why a BSP will change a default /
base config .. and showing them offers no value to the BSP user.
(From OE-Core rev: 4933b686b0f75d6841630917a2d90832df41cac7)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/kernel-yocto.bbclass')
-rw-r--r-- | meta/classes/kernel-yocto.bbclass | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 19d74a7875..2ecd060093 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass | |||
@@ -350,6 +350,7 @@ python do_kernel_configcheck() { | |||
350 | pass | 350 | pass |
351 | 351 | ||
352 | config_check_visibility = int(d.getVar("KCONF_AUDIT_LEVEL") or 0) | 352 | config_check_visibility = int(d.getVar("KCONF_AUDIT_LEVEL") or 0) |
353 | bsp_check_visibility = int(d.getVar("KCONF_BSP_AUDIT_LEVEL") or 0) | ||
353 | 354 | ||
354 | # if config check visibility is non-zero, report dropped configuration values | 355 | # if config check visibility is non-zero, report dropped configuration values |
355 | mismatch_file = d.expand("${S}/%s/cfg/mismatch.txt" % kmeta) | 356 | mismatch_file = d.expand("${S}/%s/cfg/mismatch.txt" % kmeta) |
@@ -358,6 +359,27 @@ python do_kernel_configcheck() { | |||
358 | with open (mismatch_file, "r") as myfile: | 359 | with open (mismatch_file, "r") as myfile: |
359 | results = myfile.read() | 360 | results = myfile.read() |
360 | bb.warn( "[kernel config]: specified values did not make it into the kernel's final configuration:\n\n%s" % results) | 361 | bb.warn( "[kernel config]: specified values did not make it into the kernel's final configuration:\n\n%s" % results) |
362 | |||
363 | if bsp_check_visibility: | ||
364 | invalid_file = d.expand("${S}/%s/cfg/invalid.cfg" % kmeta) | ||
365 | if os.path.exists(invalid_file) and os.stat(invalid_file).st_size > 0: | ||
366 | with open (invalid_file, "r") as myfile: | ||
367 | results = myfile.read() | ||
368 | bb.warn( "[kernel config]: This BSP sets config options that are not offered anywhere within this kernel:\n\n%s" % results) | ||
369 | errors_file = d.expand("${S}/%s/cfg/fragment_errors.txt" % kmeta) | ||
370 | if os.path.exists(errors_file) and os.stat(errors_file).st_size > 0: | ||
371 | with open (errors_file, "r") as myfile: | ||
372 | results = myfile.read() | ||
373 | bb.warn( "[kernel config]: This BSP contains fragments with errors:\n\n%s" % results) | ||
374 | |||
375 | # if the audit level is greater than two, we report if a fragment has overriden | ||
376 | # a value from a base fragment. This is really only used for new kernel introduction | ||
377 | if bsp_check_visibility > 2: | ||
378 | redefinition_file = d.expand("${S}/%s/cfg/redefinition.txt" % kmeta) | ||
379 | if os.path.exists(redefinition_file) and os.stat(redefinition_file).st_size > 0: | ||
380 | with open (redefinition_file, "r") as myfile: | ||
381 | results = myfile.read() | ||
382 | bb.warn( "[kernel config]: This BSP has configuration options defined in more than one config, with differing values:\n\n%s" % results) | ||
361 | } | 383 | } |
362 | 384 | ||
363 | # Ensure that the branches (BSP and meta) are on the locations specified by | 385 | # Ensure that the branches (BSP and meta) are on the locations specified by |