<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/kernel-yocto.bbclass, branch uninative-2.9</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=uninative-2.9</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=uninative-2.9'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2020-08-13T07:07:00+00:00</updated>
<entry>
<title>kernel-yocto: split meta data gathering into patch and config phases</title>
<updated>2020-08-13T07:07:00+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-08-12T17:03:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=095175595d9f28d5a0eb7ea520c9af0100bb8dfd'/>
<id>urn:sha1:095175595d9f28d5a0eb7ea520c9af0100bb8dfd</id>
<content type='text'>
do_kernel_metadata gathers and sanitizes the meta-data that is used
in later steps of the kernel-yocto build process. The processing
takes the form of configuration and patch gathering.

The current single pass of both config and patch gathering means
that patches can't modify in-tree configuration elements (although
this makes tracing configuration changes harder, it is a valid
workflow).

We can divide the routine into a patch and configuration phase, and
call the config variant after patching is done. This keeps the
common parts of the gahering intact, but allows us flexibilty in
when the stages happen.

(From OE-Core rev: 004da4c6c6029bb2bdcea6da8afa70368ddd1bca)

Signed-off-by: Bruce Ashfield &lt;bruce.ashfield@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-yocto: set cwd before querying the meta data dir</title>
<updated>2020-08-13T07:07:00+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-08-12T17:03:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=17798a89adf7767cf51e04b96fad58e23e411da6'/>
<id>urn:sha1:17798a89adf7767cf51e04b96fad58e23e411da6</id>
<content type='text'>
To aid classifying options and streamling reports, fragments
and classification info are consolidated into a kernel meta
directory.

The name of the meta directory is (somewhat) flexible, and hence
is queried by the tools and created if it doesn't exist.

The recent enhancements to the .config auditing introduced a
new query for the meta directory, but isn't being run in the
kernel's source directory .. and is hence creating an unwanted
file in $TOPDIR. We set the kernel source directory as the cwd
for the call, and everything goes back to where it belongs.

(From OE-Core rev: 36f95f5e22cb4858c927f2a5a3bfeae630a41f1d)

Signed-off-by: Bruce Ashfield &lt;bruce.ashfield@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-yocto: enhance configuration queue analysis capabilities</title>
<updated>2020-08-08T08:17:49+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-08-06T19:57:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=24f830fc75f46f4c9e87a757713e09cf91d76a73'/>
<id>urn:sha1:24f830fc75f46f4c9e87a757713e09cf91d76a73</id>
<content type='text'>
Enable the kernel-yocto bbclass to use enhanced capabilities from
the kern-tools symbol_why.pl.

We bump the kern-tools SRCREV to pickup the reworking of symbol_why,
which uses Kconfiglib to provide analysis on configuration values.

This is useful for debugging why a symbol specified in a fragment
did not end up in the final .config.

We introduce two ways to interact with the new symbol_why:

 1) a replacement of the existing kconf_check script
 2) a dedicated task that is explicitly invoked to dump details
    on the configuration.

The kconf_check replacement is transparent to the user, and is
run in exactly the same way as it was previously. But we get better
output and more detailed diagnostics if there are symbols that
don't make it into the final .config

The second way to interact with symbol why is via the new task
do_config_analysis. This is invoked like any other task, and by
default will provide a full configuration analysis and point the
user at files to look at for details.

If a more targetted analysis is desired, then specific symbols
can be set in the CONFIG_ANALYSIS variable. When this variable
is set, the task will only run for the given symbols and provide
per-variable links to the user. This variable can be set like
any other, including specification in the local.conf:

  CONFIG_ANALYSIS_pn-linux-yocto-dev = 'NF_CONNTRACK LOCALVERSION'

Which produces output as follows:

   WARNING: linux-yocto-dev-5.8-rc++gitAUTOINC+d22beb8f8a_8fc484ed37-r0
   do_config_analysis: Configuration analysis executed, see: tmp/work/qemuarm64-poky-linux/linux-yocto-dev/5.8-rc++gitAUTOINC+d22beb8f8a_8fc484ed37-r0/NF_CONNTRACK-config-analysis.txt for details
   WARNING: linux-yocto-dev-5.8-rc++gitAUTOINC+d22beb8f8a_8fc484ed37-r0
   do_config_analysis: Configuration audit executed, see: tmp/work/qemuarm64-poky-linux/linux-yocto-dev/5.8-rc++gitAUTOINC+d22beb8f8a_8fc484ed37-r0/NF_CONNTRACK-config-audit.txt for details
   WARNING: linux-yocto-dev-5.8-rc++gitAUTOINC+d22beb8f8a_8fc484ed37-r0
   do_config_analysis: Configuration analysis executed, see: tmp/work/qemuarm64-poky-linux/linux-yocto-dev/5.8-rc++gitAUTOINC+d22beb8f8a_8fc484ed37-r0/LOCALVERSION-config-analysis.txt for details
   WARNING: linux-yocto-dev-5.8-rc++gitAUTOINC+d22beb8f8a_8fc484ed37-r0
   do_config_analysis: Configuration audit executed, see: work/qemuarm64-poky-linux/linux-yocto-dev/5.8-rc++gitAUTOINC+d22beb8f8a_8fc484ed37-r0/LOCALVERSION-config-audit.txt for details

(From OE-Core rev: cbc896def4c8bab3150d3405969e5dd018d62d0c)

Signed-off-by: Bruce Ashfield &lt;bruce.ashfield@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel/yocto: allow dangling KERNEL_FEATURES</title>
<updated>2020-08-06T14:12:39+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-08-03T12:30:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=2b44ac076c7068aa0316d15fff49f02491eccb69'/>
<id>urn:sha1:2b44ac076c7068aa0316d15fff49f02491eccb69</id>
<content type='text'>
KERNEL_FEATURES are explicitly checked by the kern-tools, and trigger
and error when not present. This is since the KERNEL_FEATURES are
specified by layers or BSPs as elements that are requied for correct
operation.

That being said, in order to support more kernel recipes that are using
fragments, but not necessarily the yocto kernel-cache for meta-data,
this change introduces: KERNEL_DANGLING_FEATURES_WARN_ONLY

As you'd expect, when set, missing kernel features only print a
message and warn that runtime issues may occur, but otherwise allow
the kernel configuration and build process to continue.

This was noticed/required when meta-virtualization adopted a more
generic kernel bbappend (to serve the needs of more layers in the
ecosystem), but also specifies some KERNEL_FEATURES. If layers using
a recipe derived from kernel-yocto, but not the main kernel-cache,
used meta-virtualization and error would be thrown due to missing
features. We now can both allow them to continue, and also provide
a more useful message to resolve the issue.

(From OE-Core rev: 8d44ea9fbb1ee7bec1062505a9bb1e2d7b360094)

Signed-off-by: Bruce Ashfield &lt;bruce.ashfield@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-yocto: account for extracted defconfig in elements check</title>
<updated>2020-07-20T07:37:38+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-07-17T12:56:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=8cbe99b64f6f6ee13f154760aed4aa0815a6dfac'/>
<id>urn:sha1:8cbe99b64f6f6ee13f154760aed4aa0815a6dfac</id>
<content type='text'>
The test for whether or not scc should to invoked to generate a
config.queue was missing the newly created sccs_defconfig variable.
We need to test for that variable as well, or we may miss generating
the config.queue in some cases.

(From OE-Core rev: 3a95e171d3eaa6ab143d4f422c98a0ac7ad31761)

Signed-off-by: Bruce Ashfield &lt;bruce.ashfield@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel/yocto: fix search for defconfig from src_uri</title>
<updated>2020-07-08T09:37:12+00:00</updated>
<author>
<name>Andrey Zhizhikin</name>
<email>andrey.z@gmail.com</email>
</author>
<published>2020-07-01T14:58:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=7dbc62a672909adce316bb4a8772be0ee9b480fe'/>
<id>urn:sha1:7dbc62a672909adce316bb4a8772be0ee9b480fe</id>
<content type='text'>
Fetcher provides full paths to defconfig and scc files, which awk
comparison operator does not catch during construction of
src_uri_defconfig and sccs_from_src_uri lists. This causes the
src_uri_defconfig variable to come out empty, and fails further
validation if defconfig is only supplied via SRC_URI.

Replace comparison operator with awk match function which searches for
sub-string during filtering, effectively placing defconfig from SRC_URI
into src_uri_defconfig and scc files in sccs_from_src_uri respectively.

Fixes: 23dcff0d396c (kernel/yocto: ensure that defconfigs are processed first)
Cc: Bruce Ashfield &lt;bruce.ashfield@gmail.com&gt;
(From OE-Core rev: f52ce0fa98bf3bd72df7467031001f3128c145f2)

Signed-off-by: Andrey Zhizhikin &lt;andrey.z@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel/yocto: ensure that defconfigs are processed first</title>
<updated>2020-06-30T15:42:11+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-06-30T05:18:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=23dcff0d396cfe3fed4f63d33e9a84b08fb910dd'/>
<id>urn:sha1:23dcff0d396cfe3fed4f63d33e9a84b08fb910dd</id>
<content type='text'>
It is uncommon that a BSP definition and a defconfig are used in
a single configuration. That being said, it is a valid way to
organize kernel configuration meta data.

When a defconfig is used, either on the src_uri or from in
the kernel tree, it is normally expected that it is the baseline,
with all options applied on top of it.

With this commit, we detect either type of defconfig and ensure
that it is used first, followed by the fragments in their
previous order. This allows existing configuration stacks to
remain the same, while ensuring that a defconfig combined stack
works as expected.

(From OE-Core rev: e6845327b69396d843a2f3c4c3ac9400ae9caedf)

Signed-off-by: Bruce Ashfield &lt;bruce.ashfield@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-yocto.bbclass: Fix deps when externalsrc is used</title>
<updated>2020-04-24T13:10:07+00:00</updated>
<author>
<name>Paul Barker</name>
<email>pbarker@konsulko.com</email>
</author>
<published>2020-04-08T15:14:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b72dbb2e4bf2fb6cc39a87d9ca38ab4a515fe68f'/>
<id>urn:sha1:b72dbb2e4bf2fb6cc39a87d9ca38ab4a515fe68f</id>
<content type='text'>
do_kernel_configme was recently removed from SRCTREECOVEREDTASKS so this
task still runs when externalsrc is used. This task normally runs after
do_patch but when externalsrc is used, do_patch is removed and this ordering
restriction does nothing. This allows bitbake to execute do_kernel_configme
too early, causing races with do_unpack.

This is fixed by adding in a dependency on do_unpack when externalsrc is
used.

(From OE-Core rev: 75d31beb03d9369448d8d77e12321aa2d91bebf0)

Signed-off-by: Paul Barker &lt;pbarker@konsulko.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-yocto.bbclass: Support config fragments with externalsrc</title>
<updated>2020-03-10T23:20:33+00:00</updated>
<author>
<name>Paul Barker</name>
<email>pbarker@konsulko.com</email>
</author>
<published>2020-03-09T14:21:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3abf367f4806ebd8786545f9bc29f045ce9db5d0'/>
<id>urn:sha1:3abf367f4806ebd8786545f9bc29f045ce9db5d0</id>
<content type='text'>
The merging of config fragments is performend in the do_kernel_configme
task and so config fragments will not be supported when this task is
removed from the dependency tree.

kernel-yocto adds additional tasks which may modify the source directory
to SRCTREECOVEREDTASKS so that they are removed when using externalsrc.
However, do_kernel_configme should be safe to use, the only modification
to the source tree is the potential creation of the '.kernel-meta'
directory and the '.metadir' file.

(From OE-Core rev: 44f04c039a4d61dd18666e42b9b9865cbc3ada9e)

Signed-off-by: Paul Barker &lt;pbarker@konsulko.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-yocto.bbclass: fix a wrong inter-task dependency</title>
<updated>2020-03-06T08:19:18+00:00</updated>
<author>
<name>Ming Liu</name>
<email>liu.ming@toradex.com</email>
</author>
<published>2020-03-04T13:55:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c412d3440ccc0b0a498dd3c31193bafb0c4edb81'/>
<id>urn:sha1:c412d3440ccc0b0a498dd3c31193bafb0c4edb81</id>
<content type='text'>
do_kernel_checkout and do_symlink_kernsrc are both modifying ${S}, they
could conflict with eacher other, move do_kernel_checkout after
do_symlink_kernsrc does fix that.

(From OE-Core rev: 965090f42bc0576e938a0575b7938a1ff60b0018)

Signed-off-by: Ming Liu &lt;liu.ming@toradex.com&gt;
Signed-off-by: Stefan Agner &lt;stefan.agner@toradex.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
