<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/kernel-module-split.bbclass, branch yocto-3.1.23</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=yocto-3.1.23</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=yocto-3.1.23'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2020-12-18T14:20:19+00:00</updated>
<entry>
<title>kernel-module-split.bbclass: fix kernel modules getting marked as CONFFILES</title>
<updated>2020-12-18T14:20:19+00:00</updated>
<author>
<name>Gratian Crisan</name>
<email>gratian.crisan@ni.com</email>
</author>
<published>2020-12-04T19:30:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=7ac0a2f6a07605fd9d89a7f7b902285c6fab882d'/>
<id>urn:sha1:7ac0a2f6a07605fd9d89a7f7b902285c6fab882d</id>
<content type='text'>
Yi pointed out that commit 1a70a92d1f10 ("kernel-module-split.bbclass:
identify kernel modconf files as configuration files") is
unintentionally adding the actual kernel /lib/modules .ko files to the
CONFFILES variable.

The root cause is the re-use of the 'files' variable in that commit.
Fix it by using a separate variable to keep track of the generated
module .conf files that need to be marked as configuration files.

Fixes: 1a70a92d1f10 ("kernel-module-split.bbclass: identify kernel modconf files as configuration files")
Reported-by: Yi Zhao &lt;yi.zhao@windriver.com&gt;
(From OE-Core rev: f1f904ebf2aef54c4c867d5d2c842ec5d53d3c78)

Signed-off-by: Gratian Crisan &lt;gratian.crisan@ni.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit db5f2ca532db4f0d2e05b7cb5f9d146e1dd76ab3)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-module-split.bbclass: identify kernel modconf files as configuration files</title>
<updated>2020-11-20T10:44:34+00:00</updated>
<author>
<name>Gratian Crisan</name>
<email>gratian.crisan@ni.com</email>
</author>
<published>2020-11-05T21:39:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=8d40fce484b1940c200182ae710330157c868645'/>
<id>urn:sha1:8d40fce484b1940c200182ae710330157c868645</id>
<content type='text'>
Currently the modconf fragments representing the configuration for
kernel modules are written out to appropriate .conf files and added to
the FILES variable. However they are not identified as 'configuration
files' and installing a new version of a kernel module results in a
conflict and a failed installed because the respective .conf file is
already in place from a previous install.

Add the generated .conf files to the CONFFILES variable denoting their
true nature.

(From OE-Core rev: b5a113273dc4c062a4b734a403a3bb4a5e92c8ee)

Signed-off-by: Gratian Crisan &lt;gratian.crisan@ni.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
(cherry picked from commit 1a70a92d1f1006be115429a4262259c9084f484d)
Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-module-split.bbclass: support CONFIG_MODULE_COMPRESS=y</title>
<updated>2019-04-26T09:09:08+00:00</updated>
<author>
<name>Jens Rehsack</name>
<email>sno@netbsd.org</email>
</author>
<published>2019-04-18T14:08:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=67886623d9728f2bd370fb55cea5ab39bcc429c1'/>
<id>urn:sha1:67886623d9728f2bd370fb55cea5ab39bcc429c1</id>
<content type='text'>
In case, kernel config enables compressed modules, support of
splitting via split_kernel_module_packages won't find any module.
So, first expand module pattern regex to recognize compressed
modules and then objcopy on temporary extacted to extract module
information.

(From OE-Core rev: fae400b225827400bf32380a7d599d3b2969db55)

Signed-off-by: Jens Rehsack &lt;sno@netbsd.org&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>meta: Fix Deprecated warnings from regexs</title>
<updated>2019-01-16T15:35:07+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2019-01-14T15:49:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=cd4b8a8553f9d551af27941910cf4d3405ecb7b0'/>
<id>urn:sha1:cd4b8a8553f9d551af27941910cf4d3405ecb7b0</id>
<content type='text'>
Fix handling of escape characters in regexs and hence fix python
Deprecation warnings which will be problematic in python 3.8.

Note that some show up as:

"""
meta/classes/package.bbclass:1293: DeprecationWarning: invalid escape sequence \.  

"""

where the problem isn't on 1293 in package.bbclass but in some _prepend to a
package.bbclass function in a different file like mesa.inc, often from
do_package_split() calls.

(From OE-Core rev: 4b1c0c7d5525fc4cea9e0f02ec54e92a6fbc6199)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-module-split.bbclass: Fix modinfo decoding in old kernels</title>
<updated>2019-01-03T12:35:53+00:00</updated>
<author>
<name>Pau Espin Pedrol</name>
<email>pespin@sysmocom.de</email>
</author>
<published>2018-12-31T00:04:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=48c0ed2aec236939d369ca3f0093dc43db1e1dd6'/>
<id>urn:sha1:48c0ed2aec236939d369ca3f0093dc43db1e1dd6</id>
<content type='text'>
Before linux commit d36b691077dc59c74efec0d54ed21b86f7a2a21a, some
strings contained invalid utf-8 character which made
split_kernel_module_packages unhappy when parsing ums-isd200.ko:

Exception: UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf6 in position 21: invalid start byte

(From OE-Core rev: 503b977acf6984120818cbc5cfd35ff2cffb39cd)

Signed-off-by: Pau Espin Pedrol &lt;pespin@sysmocom.de&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel: drop unnecessary True options from calls to getVar</title>
<updated>2018-01-19T12:37:13+00:00</updated>
<author>
<name>Andre McCurdy</name>
<email>armccurdy@gmail.com</email>
</author>
<published>2018-01-16T03:30:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f2d7b5b2eea864daceaf68c0f6a1527f267064a2'/>
<id>urn:sha1:f2d7b5b2eea864daceaf68c0f6a1527f267064a2</id>
<content type='text'>
The older style calls (plus a bashism in kernel.bbclass, fixed
separately) were introduced via the recent change to add support for
multiple kernel packages:

  http://git.openembedded.org/openembedded-core/commit/?id=6c8c899849d101fd1b86aad0b8eed05c7c785924

(From OE-Core rev: e660ef68de3b3891a26ed6e10d96dc4efaf03ffc)

Signed-off-by: Andre McCurdy &lt;armccurdy@gmail.com&gt;
Signed-off-by: Ross Burton &lt;ross.burton@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel: Add support for multiple kernel packages</title>
<updated>2018-01-02T17:24:37+00:00</updated>
<author>
<name>Haris Okanovic</name>
<email>haris.okanovic@ni.com</email>
</author>
<published>2017-11-07T18:40:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=5b4aab6b40cf21471442e21abc8051b38985de84'/>
<id>urn:sha1:5b4aab6b40cf21471442e21abc8051b38985de84</id>
<content type='text'>
Some distros may want to provide alternate kernel "flavors" via feeds or
within bootable images. For example, readily available builds which
provide certain diagnostic features can enable developers and testers to
more quickly resolve issues by avoiding lengthy kernel builds.

This change allows for building multiple flavors of the kernel and
module packages by templatizing kernel package names via a new
KERNEL_PACKAGE_NAME variable in kernel.bbclass. It defaults to the old
name of "kernel", but can be overridden by certain recipes providing
alternate kernel flavors.

To maintain compatibility, recipes providing alternate kernel flavors
cannot be the "preferred provider" for virtual/kernel. This is because
OE puts the preferred provider's build and source at
"tmp-glibc/work-shared/$MACHINE/kernel-build-artifacts/" and
"tmp-glibc/work-shared/$MACHINE/kernel-source/" instead of
"tmp-glibc/work/*/$PN/" like other recipes. Therefore, recipes using the
default KERNEL_PACKAGE_NAME="kernel" follows the old semantics -- build
in the old location and may be preferred provider -- while recipes using
all other KERNEL_PACKAGE_NAME's build from the normal WORKDIR and don't
provide "virtual/kernel".

Testing:
 1. Add `KERNEL_PACKAGE_NAME_pn-linux-yocto-tiny = "tiny-linux"`
    to local.conf so that linux-yocto-tiny may build alongside
    the main kernel (linux-yocto).
 2. `bitbake linux-yocto linux-yocto-tiny` to build both kernel flavors.
 3. Verified image and modules IPKs exist for both:
    tmp-glibc/deploy/ipk/qemux86/kernel-* for linux-yocto
    tmp-glibc/deploy/ipk/qemux86/tiny-linux* for linux-yocto-tiny
 4. Verified linux-yocto is the "preferred provider", and was built in
    shared directory: tmp-glibc/work-shared/qemux86/kernel-*
 5. Add `CORE_IMAGE_BASE_INSTALL_append_pn-core-image-base = "tiny-linux"`
    to local.conf to install both kernel flavors in core-image-base.
 6. `bitbake core-image-base` to build an image.
 7. Verified image contains two bzImage's under /boot/, with
    "yocto-standard" (linux-yocto recipe) selected to boot via symlink.

Discussion threads:
http://lists.openembedded.org/pipermail/openembedded-core/2015-December/thread.html#114122
http://lists.openembedded.org/pipermail/openembedded-core/2017-July/thread.html#139130

[YOCTO #11363]

(From OE-Core rev: 6c8c899849d101fd1b86aad0b8eed05c7c785924)

Signed-off-by: Ioan-Adrian Ratiu &lt;adrian.ratiu@ni.com&gt;
Signed-off-by: Gratian Crisan &lt;gratian.crisan@ni.com&gt;
Signed-off-by: Haris Okanovic &lt;haris.okanovic@ni.com&gt;
Coauthored-by: Gratian Crisan &lt;gratian.crisan@ni.com&gt;
Coauthored-by: Haris Okanovic &lt;haris.okanovic@ni.com&gt;
Coauthored-by: Josh Hernstrom &lt;josh.hernstrom@ni.com&gt;
Signed-off-by: Ross Burton &lt;ross.burton@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Revert "kernel-module-split: rrecommend kernel-image instead of rdepend"</title>
<updated>2017-09-12T22:55:28+00:00</updated>
<author>
<name>Martin Hundebøll</name>
<email>mnhu@prevas.dk</email>
</author>
<published>2017-09-11T12:28:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c9daf6b38b20a04cea7179ac1eae162fa5f85ace'/>
<id>urn:sha1:c9daf6b38b20a04cea7179ac1eae162fa5f85ace</id>
<content type='text'>
This reverts commit e0ed52c51464855e9a6a37ea49df7efde7e91076.

Commit e0ed52c514 ('kernel-module-split: rrecommend kernel-image instead
of rdepend') changed kernel modules to rrecommend kernel-image instead
of rdepend on kernel. This broke existing setups, where the kernel is
omitted by setting RDEPEND_kernel-base = "".

Revert the patch, as the existing way of omitting kernel-image in images
works just fine.

(From OE-Core rev: c315b1e036b1252f35abda921c49327c950a9570)

Signed-off-by: Martin Hundebøll &lt;mnhu@prevas.dk&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel-module-split: rrecommend kernel-image instead of rdepend</title>
<updated>2017-08-23T07:47:02+00:00</updated>
<author>
<name>Martin Hundebøll</name>
<email>mnhu@prevas.dk</email>
</author>
<published>2017-08-21T09:21:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=e0ed52c51464855e9a6a37ea49df7efde7e91076'/>
<id>urn:sha1:e0ed52c51464855e9a6a37ea49df7efde7e91076</id>
<content type='text'>
Hard depending on the kernel makes it impossible to install kernel
modules without getting the kernel image installed too. This is
inconvenient in e.g. initramdisks, where the kernel is loaded from
outside the initramdisk.

Making the kernel modules rrecommend kernel-image-&lt;version&gt; instead of
rdepending on it, makes it possible to install kernel modules without
the kernel image by setting "kernel-image" in BAD_RECOMMENDATIONS.

(From OE-Core rev: 5dd7ddb66a6846d9bb59dc7833e8318992d0e645)

Signed-off-by: Martin Hundebøll &lt;mnhu@prevas.dk&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>meta: Fix return value checks from subprocess.call()'s</title>
<updated>2017-06-28T19:55:08+00:00</updated>
<author>
<name>Mikko Rapeli</name>
<email>mikko.rapeli@bmw.de</email>
</author>
<published>2017-06-22T13:23:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b090ff6a277aa6e242020d7d6ffb1d351e3ee4e0'/>
<id>urn:sha1:b090ff6a277aa6e242020d7d6ffb1d351e3ee4e0</id>
<content type='text'>
Python function subprocess.call() returns the return value of the
executed process. If return values are not checked, errors may
go unnoticed and bad things can happen.

Change all callers of subprocess.call() which do not check for
the return value to use subprocess.check_call() which raises
CalledProcessError if the subprocess returns with non-zero value.

https://docs.python.org/2/library/subprocess.html#using-the-subprocess-module

All users of the function were found with:

$ git grep "subprocess\.call" | \
  egrep -v 'if.*subprocess\.call|=\ +subprocess\.call|return.*subprocess\.call'

Tested similar patch on top of yocto jethro. Only compile tested
core-image-minimal on poky master branch.

(From OE-Core rev: 578c8205fd14c48c6d30ef2889d86f1b4aee060a)

Signed-off-by: Mikko Rapeli &lt;mikko.rapeli@bmw.de&gt;
Signed-off-by: Ross Burton &lt;ross.burton@intel.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
