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 | |
| 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>
| -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 |
