kernel-yocto: consolidated pull request
cover kernel-yocto: consolidated pull request
Hi all,
Here are some fixes for the minor issues cased by the kern-tools update and the recent 4.8 kernel introduction.
RP reported a build and footprint time increase for 4.8, that was due to some missing kernel meta data that (re)enabled DEBUG and for the standard kernel. commit [kernel-yocto: restore missing configuration meta data] deals with that issue.
The commits:
kernel-yocto: restore kernel-meta data detection for SRC_URI elements
kernel-yocto: allow --allnoconfig and --alldefconfig as KCONFIG_MODES
Fix some issues with the compatibility of existing layers and config fragment users. I was luckily able to fix the issues without bringing the complexity that I was removing.
There's a small change to uvesafb to have a longer timeout on some machines (or virtual machines) to avoid issues when performing QA testing.
And finally, we have the 4.8-rc5 content update. I'll do one of these a week until we get to the full 4.8 release. This can be pended for the M3 build, but it did pass my local sanity testing.
Cheers,
Bruce
The following changes since commit ce4ea7a730a7bec257218533b7c1fcb31134e25b:
recipetool: create: avoid extra blank lines in output recipe (2016-09-08 00:36:49 +0100)
are available in the git repository at:
git://git.pokylinux.org/poky-contrib zedd/kernel
http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=zedd/kernel
Bruce Ashfield (5):
kernel-yocto: restore kernel-meta data detection for SRC_URI elements
kernel-yocto: allow --allnoconfig and --alldefconfig as KCONFIG_MODES
kernel-yocto: restore missing configuration meta data
linux-yocto: update to 4.8-rc5
linux-yocto/4.4/4.8: uvesafb: provide option to specify timeout for
task completion
meta/classes/kernel-yocto.bbclass | 15 ++++++++++----- meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto-rt_4.8.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto-tiny_4.4.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto-tiny_4.8.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto_4.4.bb | 18 +++++++++--------- meta/recipes-kernel/linux/linux-yocto_4.8.bb | 18 +++++++++--------- 7 files changed, 36 insertions(+), 31 deletions(-)
Signature · 1 line
2.5.0
PATCH 1/5 kernel-yocto: restore kernel-meta data detection for SRC_URI elements
Before the kernel tools were simplified and streamlined, there was code which not only migrated a patch/cfg/scc to the kernel build tree, it also migrated any subdirectories of those patches.
The effect of this data migration was that any other meta data in a patch's directory structure would be available for processing.
While we don't want to do this migration anymore, it is possible to check the path of any SRC_URI patches, and if they include a "kernel-meta" subdirectory add it to the search path.
This restores the functionality without the old complexity.
--- meta/classes/kernel-yocto.bbclass | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-)
meta/classes/kernel-yocto.bbclass +8 -3
@@ -124,14 +124,19 @@ do_kernel_metadata() { # for the update part of the process for f in ${feat_dirs}; do if [ -d "${WORKDIR}/$f/meta" ]; then - includes="$includes -I${WORKDIR}/$f/meta" - elif [ -d "${WORKDIR}/$f" ]; then + includes="$includes -I${WORKDIR}/$f/kernel-meta" + elif [ -d "${WORKDIR}/$f" ]; then includes="$includes -I${WORKDIR}/$f" fi done - for s in ${sccs}; do + for s in ${sccs} ${patches}; do sdir=$(dirname $s) includes="$includes -I${sdir}" + # if a SRC_URI passed patch or .scc has a subdir of "kernel-meta", + # then we add it to the search path + if [ -d "${sdir}/kernel-meta" ]; then + includes="$includes -I${sdir}/kernel-meta" + fi done # expand kernel features into their full path equivalents
Signature · 1 line
2.5.0
PATCH 2/5 kernel-yocto: allow --allnoconfig and --alldefconfig as KCONFIG_MODES
In reply to Bruce AshfieldPreviously merge_config.sh was wrapped by the configme script, configme took the different KCONFIG_MODES as options, and used --allnoconfig or --alldefconfig.
With the switch to merge_config.sh no longer being wrapped, the new processing wasn't matching the existing values and only supported allnoconfig or alldefconfig.
To avoid breaking existing layers, and also keep any working that have already switched, we can make the case statement match both.
--- meta/classes/kernel-yocto.bbclass | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
meta/classes/kernel-yocto.bbclass +2 -2
@@ -239,10 +239,10 @@ do_kernel_configme() { # translate the kconfig_mode into something that merge_config.sh # understands case ${KCONFIG_MODE} in - allnoconfig) + *allnoconfig) config_flags="-n" ;; - alldefconfig) + *alldefconfig) config_flags="" ;; *)
Signature · 1 line
2.5.0
PATCH 3/5 kernel-yocto: restore missing configuration meta data
In reply to Bruce AshfieldSome of the meta-data from the 4.4 kernel was missing from the 4.8 branch. This resulted in some functionality drops and also a size/time increase in the kernel build (due to debug being turned on).
With this resync, we now have the missing config restored.
--- meta/recipes-kernel/linux/linux-yocto-rt_4.8.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-tiny_4.8.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_4.8.bb | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_4.8.bb +1 -1
@@ -12,7 +12,7 @@ python () { } SRCREV_machine ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_meta ?= "8cb7317502c2577f8c83eaf1c061603023824313" +SRCREV_meta ?= "dd820fa5f7079ac75338f0484151e6454db06951" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.8.git;branch=${KBRANCH};name=machine \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.8;destsuffix=${KMETA}"
meta/recipes-kernel/linux/linux-yocto-tiny_4.8.bb +1 -1
@@ -10,7 +10,7 @@ KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" SRCREV_machine ?= "3eab887a55424fc2c27553b7bfe32330df83f7b8" -SRCREV_meta ?= "8cb7317502c2577f8c83eaf1c061603023824313" +SRCREV_meta ?= "dd820fa5f7079ac75338f0484151e6454db06951" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_4.8.bb +1 -1
@@ -19,7 +19,7 @@ SRCREV_machine_qemux86 ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" SRCREV_machine_qemux86-64 ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" SRCREV_machine_qemumips64 ?= "a4793b209b32964533e37ebd28a72b757c0f651a" SRCREV_machine ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_meta ?= "8cb7317502c2577f8c83eaf1c061603023824313" +SRCREV_meta ?= "dd820fa5f7079ac75338f0484151e6454db06951" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.8.git;name=machine;branch=${KBRANCH}; \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.8;destsuffix=${KMETA}"
Signature · 1 line
2.5.0
PATCH 4/5 linux-yocto: update to 4.8-rc5
In reply to Bruce Ashfield--- meta/recipes-kernel/linux/linux-yocto-rt_4.8.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto-tiny_4.8.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto_4.8.bb | 18 +++++++++--------- 3 files changed, 13 insertions(+), 13 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_4.8.bb +2 -2
@@ -11,8 +11,8 @@ python () { raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_meta ?= "dd820fa5f7079ac75338f0484151e6454db06951" +SRCREV_machine ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_meta ?= "25fb74eaaef249519f25e243e7f9bf0cab0e1781" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.8.git;branch=${KBRANCH};name=machine \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.8;destsuffix=${KMETA}"
meta/recipes-kernel/linux/linux-yocto-tiny_4.8.bb +2 -2
@@ -9,8 +9,8 @@ LINUX_VERSION ?= "4.8-rc4" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine ?= "3eab887a55424fc2c27553b7bfe32330df83f7b8" -SRCREV_meta ?= "dd820fa5f7079ac75338f0484151e6454db06951" +SRCREV_machine ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_meta ?= "25fb74eaaef249519f25e243e7f9bf0cab0e1781" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_4.8.bb +9 -9
@@ -11,15 +11,15 @@ KBRANCH_qemux86 ?= "standard/base" KBRANCH_qemux86-64 ?= "standard/base" KBRANCH_qemumips64 ?= "standard/mti-malta64" -SRCREV_machine_qemuarm ?= "20544507201f870a365c43759e5dea1ab49a2d68" -SRCREV_machine_qemuarm64 ?= "3eab887a55424fc2c27553b7bfe32330df83f7b8" -SRCREV_machine_qemumips ?= "03d4caf37d133a923e49b8ad6d814ee299cf92c7" -SRCREV_machine_qemuppc ?= "3eab887a55424fc2c27553b7bfe32330df83f7b8" -SRCREV_machine_qemux86 ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_machine_qemux86-64 ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_machine_qemumips64 ?= "a4793b209b32964533e37ebd28a72b757c0f651a" -SRCREV_machine ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_meta ?= "dd820fa5f7079ac75338f0484151e6454db06951" +SRCREV_machine_qemuarm ?= "9a91ef47f85a741d842b876267b29f8ded751f68" +SRCREV_machine_qemuarm64 ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_machine_qemumips ?= "40c7a721efe2822fdb7df4b2902a1994add40a77" +SRCREV_machine_qemuppc ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_machine_qemux86 ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_machine_qemux86-64 ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_machine_qemumips64 ?= "fe4805532e149324939bf9d8415ed43dac357709" +SRCREV_machine ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_meta ?= "25fb74eaaef249519f25e243e7f9bf0cab0e1781" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.8.git;name=machine;branch=${KBRANCH}; \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.8;destsuffix=${KMETA}"
Signature · 1 line
2.5.0
Re: [PATCH 4/5] linux-yocto: update to 4.8-rc5
I forgot to bump the LINUX_VERSION on this patch. I can send an incremental change
or amend this one. Which is preferred ?
Bruce
On Wed, Sep 7, 2016 at 9:08 PM, Bruce Ashfield <[email protected]
Quoted 85 lines
wrote:
Signed-off-by Bruce Ashfield <[email protected]>--- meta/recipes-kernel/linux/linux-yocto-rt_4.8.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto-tiny_4.8.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto_4.8.bb | 18 +++++++++--------- 3 files changed, 13 insertions(+), 13 deletions(-)meta/recipes-kernel/linux/linux-yocto-rt_4.8.bb +2
-2@@ -11,8 +11,8 @@ python () { raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_meta ?= "dd820fa5f7079ac75338f0484151e6454db06951" +SRCREV_machine ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_meta ?= "25fb74eaaef249519f25e243e7f9bf0cab0e1781" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.8.git;branch=${KBRANCH};name=machine \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.8;destsuffix=${KMETA}"
meta/recipes-kernel/linux/linux-yocto-tiny_4.8.bb +2
-2@@ -9,8 +9,8 @@ LINUX_VERSION ?= "4.8-rc4" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine ?= "3eab887a55424fc2c27553b7bfe32330df83f7b8" -SRCREV_meta ?= "dd820fa5f7079ac75338f0484151e6454db06951" +SRCREV_machine ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_meta ?= "25fb74eaaef249519f25e243e7f9bf0cab0e1781" PV = "${LINUX_VERSION}+git${SRCPV}"meta/recipes-kernel/linux/linux-yocto_4.8.bb +9
-9@@ -11,15 +11,15 @@ KBRANCH_qemux86 ?= "standard/base" KBRANCH_qemux86-64 ?= "standard/base" KBRANCH_qemumips64 ?= "standard/mti-malta64" -SRCREV_machine_qemuarm ?= "20544507201f870a365c43759e5dea1ab49a2d68" -SRCREV_machine_qemuarm64 ?= "3eab887a55424fc2c27553b7bfe32330df83f7b8" -SRCREV_machine_qemumips ?= "03d4caf37d133a923e49b8ad6d814ee299cf92c7" -SRCREV_machine_qemuppc ?= "3eab887a55424fc2c27553b7bfe32330df83f7b8" -SRCREV_machine_qemux86 ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_machine_qemux86-64 ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_machine_qemumips64 ?= "a4793b209b32964533e37ebd28a72b757c0f651a" -SRCREV_machine ?= "a7d71794e4e38d2f861c1b1dbff761ae0b0836b3" -SRCREV_meta ?= "dd820fa5f7079ac75338f0484151e6454db06951" +SRCREV_machine_qemuarm ?= "9a91ef47f85a741d842b876267b29f8ded751f68" +SRCREV_machine_qemuarm64 ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_machine_qemumips ?= "40c7a721efe2822fdb7df4b2902a1994add40a77" +SRCREV_machine_qemuppc ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_machine_qemux86 ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_machine_qemux86-64 ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_machine_qemumips64 ?= "fe4805532e149324939bf9d8415ed43dac357709" +SRCREV_machine ?= "9e7ee5155e3466824abe94eebb641c63ab5cd5f2" +SRCREV_meta ?= "25fb74eaaef249519f25e243e7f9bf0cab0e1781" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.8.git;name= machine;branch=${KBRANCH}; \git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.8;destsuffix=${KMETA}"
--
2.5.0--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core
Signature · 2 lines
"Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end"
Re: [PATCH 4/5] linux-yocto: update to 4.8-rc5
Quoted 3 lines · Bruce Ashfield
I forgot to bump the
LINUX_VERSIONon this patch. I can send an incremental change
or amend this one. Which is preferred ?
It already merged so against master please.
(and I can confirm the build performance looks much better thanks!)
Cheers,
Richard
PATCH 5/5 linux-yocto/4.4/4.8: uvesafb: provide option to specify timeout for task completion
In reply to Bruce AshfieldIntegrating the following patch:
[
We try to make this change a generic extension, but it is actually for a corner case. When a VM (qemu) gets a very limited cpu bandwidth from host, which could be under a heavy load, the existing 5000 ms timeout could occur and trigger error messages in the task function's callers.
This change adds a new timeout parameter so that we can tweak the value as a workaround or for troubleshooting purposes. In the infinite wait case, A warning message is printed at 5000ms interval.
In real world, the current 5 sec is generous enough for a video request in my opinion, so this change could not be very useful.
Upstream Status: Inappropriate
]
--- meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto-tiny_4.4.bb | 4 ++-- meta/recipes-kernel/linux/linux-yocto_4.4.bb | 18 +++++++++--------- 3 files changed, 13 insertions(+), 13 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb +2 -2
@@ -11,8 +11,8 @@ python () { raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it") } -SRCREV_machine ?= "9135adcfb01432abe4a95a50fca5d0395239f798" -SRCREV_meta ?= "698835841165b68089604398f68fd8bc3f79cb65" +SRCREV_machine ?= "a52822c864c50cc5e42939d217a8559fbf853fde" +SRCREV_meta ?= "59290c5f6192da2eccf478d37a8f9f88134822b3" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.4.git;branch=${KBRANCH};name=machine \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.4;destsuffix=${KMETA}"
meta/recipes-kernel/linux/linux-yocto-tiny_4.4.bb +2 -2
@@ -9,8 +9,8 @@ LINUX_VERSION ?= "4.4.18" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine ?= "0a0c93f29c0d65c00abdd2f6d1eb89134fae9525" -SRCREV_meta ?= "698835841165b68089604398f68fd8bc3f79cb65" +SRCREV_machine ?= "a67e1ae4bf3570e93f8d8fe33b1830de058c1b72" +SRCREV_meta ?= "59290c5f6192da2eccf478d37a8f9f88134822b3" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_4.4.bb +9 -9
@@ -11,15 +11,15 @@ KBRANCH_qemux86 ?= "standard/base" KBRANCH_qemux86-64 ?= "standard/base" KBRANCH_qemumips64 ?= "standard/mti-malta64" -SRCREV_machine_qemuarm ?= "81cae0bb962c278b7fd616ce94b0a1ea21b9a938" -SRCREV_machine_qemuarm64 ?= "0a0c93f29c0d65c00abdd2f6d1eb89134fae9525" -SRCREV_machine_qemumips ?= "92bae966ed0bdf4bd8c8343978f83b80b8fa9981" -SRCREV_machine_qemuppc ?= "0a0c93f29c0d65c00abdd2f6d1eb89134fae9525" -SRCREV_machine_qemux86 ?= "0a0c93f29c0d65c00abdd2f6d1eb89134fae9525" -SRCREV_machine_qemux86-64 ?= "0a0c93f29c0d65c00abdd2f6d1eb89134fae9525" -SRCREV_machine_qemumips64 ?= "aa125473aef74e7731b14f6b56c1b50589fcd668" -SRCREV_machine ?= "0a0c93f29c0d65c00abdd2f6d1eb89134fae9525" -SRCREV_meta ?= "698835841165b68089604398f68fd8bc3f79cb65" +SRCREV_machine_qemuarm ?= "2505d9c2441eb638d55b330144988d1730065074" +SRCREV_machine_qemuarm64 ?= "a67e1ae4bf3570e93f8d8fe33b1830de058c1b72" +SRCREV_machine_qemumips ?= "544caf9c03c40c2de6b93db9a767e568e0baaa8f" +SRCREV_machine_qemuppc ?= "a67e1ae4bf3570e93f8d8fe33b1830de058c1b72" +SRCREV_machine_qemux86 ?= "a67e1ae4bf3570e93f8d8fe33b1830de058c1b72" +SRCREV_machine_qemux86-64 ?= "a67e1ae4bf3570e93f8d8fe33b1830de058c1b72" +SRCREV_machine_qemumips64 ?= "c1b45251a5fabfb0f2aba3a0168d8a952a2cd827" +SRCREV_machine ?= "a67e1ae4bf3570e93f8d8fe33b1830de058c1b72" +SRCREV_meta ?= "59290c5f6192da2eccf478d37a8f9f88134822b3" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.4.git;name=machine;branch=${KBRANCH}; \ git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.4;destsuffix=${KMETA}"
Signature · 1 line
2.5.0