<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/kernel.bbclass, branch 3.3_M1</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=3.3_M1</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=3.3_M1'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2020-11-18T13:59:27+00:00</updated>
<entry>
<title>kernel: relocate copy of module.lds to module compilation task</title>
<updated>2020-11-18T13:59:27+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-11-18T04:56:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d8f47a68a92802fc47f297de05a0f2817963a7ee'/>
<id>urn:sha1:d8f47a68a92802fc47f297de05a0f2817963a7ee</id>
<content type='text'>
There were two copies of this patch floating around, and the merged
variant has the copy in the wrong place.

module.lds is only created during modules_prepare, and that target is
not invoked during our main build of the kernel. We aren't about to
change the kernel build (there's no need), so we move the copy into
the compile_kernelmodules task. After that runs, we have module.lds
availble to copy.

This has been tested against clean kernel + out of tree module
builds, and the dependencies are correct that the file is copied
before the out of tree module build starts.

(From OE-Core rev: 7d94f9209ebaaf59ea001239a889dd7f928a0e7c)

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: Set proper LD in KERNEL_KCONFIG_COMMAND</title>
<updated>2020-11-17T21:53:13+00:00</updated>
<author>
<name>Wonmin Jung</name>
<email>wonmin82@gmail.com</email>
</author>
<published>2020-11-16T11:16:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=60a0a2fb1e4a7a42d504ba08b47837f562844076'/>
<id>urn:sha1:60a0a2fb1e4a7a42d504ba08b47837f562844076</id>
<content type='text'>
With 'ld-is-gold' and linux kernel 5.4 or later, menuconfig
task for kernel recipes will fail with:

$ bitbake -c menuconfig virtual/kernel
...
scripts/kconfig/mconf  Kconfig
scripts/Kconfig.include:43:  gold linker 'x86_64-poky-linux-ld' not supported
/OE/build/tmp/work-shared/qemux86-64/kernel-source/scripts/kconfig/Makefile:29:
 recipe for target 'menuconfig' failed
make[2]: *** [menuconfig] Error 1
/OE/build/tmp/work-shared/qemux86-64/kernel-source/Makefile:606:
 recipe for target 'menuconfig' failed
make[1]: *** [menuconfig] Error 2
/OE/build/tmp/work-shared/qemux86-64/kernel-source/Makefile:185:
 recipe for target '__sub-make' failed
make: *** [__sub-make] Error 2
Command failed.

This is because that the KERNEL_LD variable already set in
kernel-arch.bbclass isn't used by do_menuconfig function of
cml1.bbclass.

To fix this issue specify LD variable while calling the kernel
menuconfig command through KERNEL_KCONFIG_COMMAND.

(From OE-Core rev: 1faf66ce0b1f8f5165277161e07e25e672370c3f)

Signed-off-by: Wonmin Jung &lt;wonmin82@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel: provide module.lds for out of tree builds in v5.10+</title>
<updated>2020-11-16T14:27:46+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-11-13T06:32:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=92eceb5f1daf30c7320259ed2e494cc2a69acfb4'/>
<id>urn:sha1:92eceb5f1daf30c7320259ed2e494cc2a69acfb4</id>
<content type='text'>
The upstream commit 596b0474d3d [kbuild: preprocess module linker
script], adds a dependency on module.lds for external module
building.

Since module.lds is generated as part of 'modules_prepare', we
must make it available with the other kernel artifacts in the
kernel shared workdir, otherwise out of tree builds fail.

This fixes errors like:

    | make[4]: *** No rule to make target 'scripts/module.lds', needed by
        'build/tmp/work/qemuarm64-poky-linux/cryptodev-module/1.11-r0/git/cryptodev.ko'.
        Stop.
    | make[4]: *** Waiting for unfinished jobs....

We also ensure that kernel-devsrc has a copy to support on
target module builds that are often prepared with 'make scripts
prepare'. Those targets won't regenerate it, so the build fails.
If 'make modules_prepare' is used, the file will be regenerated
and overwrite our copy (as expected).

(From OE-Core rev: 0fc66a0b64953aae38d0124b57615fffaec8de52)

Signed-off-by: Pan, Kris &lt;kris.pan@intel.com&gt;
Signed-off-by: Lili Li &lt;lili.li@intel.com&gt;
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.bbclass: ensure symlink_kernsrc task gets run even with externalsrc</title>
<updated>2020-09-28T13:15:48+00:00</updated>
<author>
<name>Rasmus Villemoes</name>
<email>rasmus.villemoes@prevas.dk</email>
</author>
<published>2020-09-25T14:05:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=cbf566ec43b8a6cbe4db327cd90ce88be402f5e0'/>
<id>urn:sha1:cbf566ec43b8a6cbe4db327cd90ce88be402f5e0</id>
<content type='text'>
Commit c5dfc2586b41 (kernel.bbclass: run do_symlink_kernsrc before
do_patch) fixed a race between do_symlink_kernsrc and
do_populate_lic. However, I missed the fact that when
externalsrc.bbclass is in use, the do_patch task doesn't exist,
meaning that do_symlink_kernsrc now doesn't get run at all, breaking
the build.

We need this task to run regardless of whether do_patch exists or not,
so reinstate the configure-&gt;symlink_kernsrc dependency explicitly.

Fixes: c5dfc2586b41 (kernel.bbclass: run do_symlink_kernsrc before
do_patch)
Reported-by: Chanho Park &lt;parkch98@gmail.com&gt;

(From OE-Core rev: a2b50b74d609ce079ab36b82d4c7c3539fb56485)

Signed-off-by: Rasmus Villemoes &lt;rasmus.villemoes@prevas.dk&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: use camelCase notation for bash variables in do_deploy</title>
<updated>2020-09-17T08:47:45+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>Martin.Jansa@gmail.com</email>
</author>
<published>2020-09-16T12:54:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=a00ca02fbd20af5dcbc9ba6aff65645780195ebf'/>
<id>urn:sha1:a00ca02fbd20af5dcbc9ba6aff65645780195ebf</id>
<content type='text'>
* to match other variables there like deployDir imageType

[YOCTO #12937]

(From OE-Core rev: 13c5d1b686255d385d200cbd06b7000080809fc7)

Signed-off-by: Martin Jansa &lt;Martin.Jansa@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: eliminate (initramfs_)symlink_name variables</title>
<updated>2020-09-17T08:47:45+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>Martin.Jansa@gmail.com</email>
</author>
<published>2020-09-16T12:54:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d1f5f2391e868df98c05fd1ee965687c01428435'/>
<id>urn:sha1:d1f5f2391e868df98c05fd1ee965687c01428435</id>
<content type='text'>
* they are used only once, we can use the value directly
* notice that .bin extension isn't part of the variable values

[YOCTO #12937]

(From OE-Core rev: 22874b43de45e86418f683eb9d4394d7a8a08033)

Signed-off-by: Martin Jansa &lt;Martin.Jansa@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: use bash variables like imageType, base_name without {}</title>
<updated>2020-09-17T08:47:45+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>Martin.Jansa@gmail.com</email>
</author>
<published>2020-09-16T12:54:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=89c123119ba1b49e2507c547409eaca3d5e353ce'/>
<id>urn:sha1:89c123119ba1b49e2507c547409eaca3d5e353ce</id>
<content type='text'>
* just to make sure it looks like bash variable not bitbake variable in
  run.do_* scripts

[YOCTO #12937]

(From OE-Core rev: 9a16dc2ac3d5e8ea95a575c377d3ad1602c1db12)

Signed-off-by: Martin Jansa &lt;Martin.Jansa@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: Move away from calling package_get_auto_pr</title>
<updated>2020-08-28T06:08:37+00:00</updated>
<author>
<name>Mark Hatle</name>
<email>mark.hatle@kernel.crashing.org</email>
</author>
<published>2020-08-27T19:07:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=fc807c9de7288fa62edf85409b3d2f55f862ac08'/>
<id>urn:sha1:fc807c9de7288fa62edf85409b3d2f55f862ac08</id>
<content type='text'>
...instead we call read_subpackage_metadata.

Calling package_get_auto_pr *should* result in the same PKGV AUTOINC
replacement.  However, it will also end up changing PKGR differently
then do_package as the BB_TASKHASH used will be for the wrong task.

Generally this won't cause any real-world issue, but it could cause
problems.

Moving to read_subpackage_metadata ensures that the values used
in do_package will be read in and used for kernel deployment.

(From OE-Core rev: 86142dad13935a0d9af4a4177e05ff5c39003db7)

Signed-off-by: Mark Hatle &lt;mark.hatle@kernel.crashing.org&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: Remove do_install[prefunc] no longer needed</title>
<updated>2020-08-26T20:56:41+00:00</updated>
<author>
<name>Mark Hatle</name>
<email>mark.hatle@kernel.crashing.org</email>
</author>
<published>2020-08-26T11:27:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d3e8f2e335cdea39aa2a001f1d99361192053926'/>
<id>urn:sha1:d3e8f2e335cdea39aa2a001f1d99361192053926</id>
<content type='text'>
Prior work has refactored the do_install task multiple times, and any
references to PKGV and PKGR (even indirect ones) have been removed.

(From OE-Core rev: 36fe4db8ae827a93abe9fce6740459d215411965)

Signed-off-by: Mark Hatle &lt;mark.hatle@kernel.crashing.org&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: run do_symlink_kernsrc before do_patch</title>
<updated>2020-08-26T08:04:04+00:00</updated>
<author>
<name>Rasmus Villemoes</name>
<email>rasmus.villemoes@prevas.dk</email>
</author>
<published>2020-08-25T14:35:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=94ed64f3759b3814c95ab0a39e1088286f166458'/>
<id>urn:sha1:94ed64f3759b3814c95ab0a39e1088286f166458</id>
<content type='text'>
There's a race between do_symlink_kernsrc and do_populate_lic, since
the latter is ordered "after do_patch"; so the two may run in
parallel. In some cases, that actually causes do_populate_lic to fail
if it happens to look for a license file somewhere under ${S} in the
short window after shutil.move and before the symlink has been
created.

Fix that by simply ordering symlink_kernsrc before do_patch. Any task
that pokes around in ${S} looking for files should be ordered after
do_patch, so this should also fix similar latent races with other ad
hoc tasks.

(From OE-Core rev: c5dfc2586b4135cc86e91bb04fed837daf505676)

Signed-off-by: Rasmus Villemoes &lt;rasmus.villemoes@prevas.dk&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
