Skip to contentSkip to conversation

kernel-yocto: 4.9 goodness

PATCH In review Bruce Ashfield 3 participants 6 messages Dec 22, 2016 – Dec 26, 2016

lore
Share & tools
lore
#0 lore raw

cover kernel-yocto: 4.9 goodness

Hi all,

I'm sending this out so it can get some extra test cycles. I've built and booted core-image-kernel-dev/sato on qemu* with the 4.9 kernel and 4.9 libc-headers.

I didn't see any issues .. but there always seems to be one lurking.

I'm heading out of town for the holidays, so this commit does not switch qemu* to use 4.9 by default, but it does put the recipes and trees in place for upcoming work on new targets and -rt support.

So assuming that the libc-headers change survives some autobuilder cycles, this should be safe for merge.

Cheers,

Bruce

The following changes since commit d0d260b0b85790ceb136dd6b0445e8e33d038f5e:

u-boot/beaglebone: Select Beaglebone Black target specifically. (2016-12-17 09:57:37 +0000)

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 (2):
linux-libc-headers: introduce 4.9 headers
kernel: introduce linux-yocto v4.9 recipes

 meta/conf/distro/include/tcmode-default.inc        |  2 +-
 ...bc-headers_4.8.bb => linux-libc-headers_4.9.bb} |  6 +--
 meta/recipes-kernel/linux/linux-yocto-rt_4.9.bb    | 38 +++++++++++++++++++
 meta/recipes-kernel/linux/linux-yocto-tiny_4.9.bb  | 25 ++++++++++++
 meta/recipes-kernel/linux/linux-yocto_4.9.bb       | 44 ++++++++++++++++++++++
 5 files changed, 110 insertions(+), 5 deletions(-)
 rename meta/recipes-kernel/linux-libc-headers/{linux-libc-headers_4.8.bb => linux-libc-headers_4.9.bb} (64%)
 create mode 100644 meta/recipes-kernel/linux/linux-yocto-rt_4.9.bb
 create mode 100644 meta/recipes-kernel/linux/linux-yocto-tiny_4.9.bb
 create mode 100644 meta/recipes-kernel/linux/linux-yocto_4.9.bb
Signature · 1 line
2.5.0
#1 lore raw

PATCH 1/2 linux-libc-headers: introduce 4.9 headers

Bumping the linux-libc-headers to the 4.9 kernel variant. Since 4.9 will be a LTSI kernel, and there will be an associated linux-yocto it is worth moving to these headers sooner rather than later.

This commit also drops the 4.8 headers and sets 4.9 to be the default.

---
 meta/conf/distro/include/tcmode-default.inc                         | 2 +-
 .../{linux-libc-headers_4.8.bb => linux-libc-headers_4.9.bb}        | 6 ++----
 2 files changed, 3 insertions(+), 5 deletions(-)
 rename meta/recipes-kernel/linux-libc-headers/{linux-libc-headers_4.8.bb => linux-libc-headers_4.9.bb} (64%)
meta/conf/distro/include/tcmode-default.inc +1 -1
index ca3c5ec90a5f..836adaf9dddb 100644
@@ -28,7 +28,7 @@ BINUVERSION ?= "2.27%"
 GDBVERSION ?= "7.11%"
 GLIBCVERSION ?= "2.24"
 UCLIBCVERSION ?= "1.0%"
-LINUXLIBCVERSION ?= "4.8%"
+LINUXLIBCVERSION ?= "4.9%"
 
 PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
 PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} ?= "${GCCVERSION}"
meta/recipes-kernel/linux-libc-headers/linux-libc-headers_4.9.bb renamed from meta/recipes-kernel/linux-libc-headers/linux-libc-headers_4.8.bb +2 -4
similarity index 64%
rename from meta/recipes-kernel/linux-libc-headers/linux-libc-headers_4.8.bb
rename to meta/recipes-kernel/linux-libc-headers/linux-libc-headers_4.9.bb
index 77e0870d326f..0a44018f880b 100644
@@ -1,12 +1,10 @@
 require linux-libc-headers.inc
 
-PV = "4.8"
-
 SRC_URI_append_libc-musl = "\
     file://0001-libc-compat.h-fix-some-issues-arising-from-in6.h.patch \
     file://0002-libc-compat.h-prevent-redefinition-of-struct-ethhdr.patch \
     file://0003-remove-inclusion-of-sysinfo.h-in-kernel.h.patch \
    "
 
-SRC_URI[md5sum] = "c1af0afbd3df35c1ccdc7a5118cd2d07"
-SRC_URI[sha256sum] = "3e9150065f193d3d94bcf46a1fe9f033c7ef7122ab71d75a7fb5a2f0c9a7e11a"
+SRC_URI[md5sum] = "0a68ef3615c64bd5ee54a3320e46667d"
+SRC_URI[sha256sum] = "029098dcffab74875e086ae970e3828456838da6e0ba22ce3f64ef764f3d7f1a"
Signature · 1 line
2.5.0
#2 lore raw

Re: [PATCH 1/2] linux-libc-headers: introduce 4.9 headers

Quoted 6 lines · Bruce Ashfield

Bumping the linux-libc-headers to the 4.9 kernel variant. Since 4.9 will be a LTSI kernel, and there will be an associated linux-yocto it is worth moving to these headers sooner rather than later.

This commit also drops the 4.8 headers and sets 4.9 to be the default.

The autobuilder run (ross/mut 1dc1894e05) with this had a couple of issues:

*** ppp fails to build on musl:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=10853

*** ncurses fails in several builds, all gnu/stubs.h related:
ncurses was also upgraded in this AB run (CCing Huang Qiyu) but the failures seem more like libc related...

x32:
| nightly-x32/build/build/tmp/sysroots/qemux86-64/usr/include/gnu/stubs.h:10:27:
fatal error: gnu/stubs-64.h: No such file or directory
| # include <gnu/stubs-64.h>

arm:
| nightly-arm/build/build/tmp/sysroots/beaglebone/usr/include/gnu/stubs.h:7:29:
fatal error: gnu/stubs-soft.h: No such file or directory
| # include <gnu/stubs-soft.h>

multilib:
| nightly-multilib/build/build/tmp/sysroots/qemumips64/usr/include/gnu/stubs.h:35:33:
fatal error: gnu/stubs-n64_hard.h: No such file or directory
| # include <gnu/stubs-n64_hard.h>

The full build log links can be found in "nightly 1121" section here:
https://wiki.yoctoproject.org/wiki/BuildLog#nightly_1121_-_ross.2Fmut_1dc1894e05ef0f3aeeefa61ed89613f17bba2e83

Cheers,
Jussi

#3 lore raw

Re: [PATCH 1/2] linux-libc-headers: introduce 4.9 headers

Quoted 7 lines · Jussi Kukkonen
Quoted 5 lines · Bruce Ashfield

Bumping the linux-libc-headers to the 4.9 kernel variant. Since 4.9 will be a LTSI kernel, and there will be an associated linux-yocto it is worth moving to these headers sooner rather than later.

Quoted 7 lines
Quoted 1 line

This commit also drops the 4.8 headers and sets 4.9 to be the default.

The autobuilder run (ross/mut 1dc1894e05) with this had a couple of issues:

*** ppp fails to build on musl: https://bugzilla.yoctoproject.
org/show_bug.cgi?id=10853

Thanks for the update. Not knowing much about musl, others have jumped in on these
in the past. I'll loop around and have a look at it if one of the musl users doesn't have an
idea as to what is up with ppp.

Quoted 16 lines

*** ncurses fails in several builds, all gnu/stubs.h related:
ncurses was also upgraded in this AB run (CCing Huang Qiyu) but the failures seem more like libc related...

x32:
| nightly-x32/build/build/tmp/sysroots/qemux86-64/usr/include/gnu/stubs.h:10:27:
fatal error: gnu/stubs-64.h: No such file or directory
| # include <gnu/stubs-64.h>

arm:
| nightly-arm/build/build/tmp/sysroots/beaglebone/usr/include/gnu/stubs.h:7:29:
fatal error: gnu/stubs-soft.h: No such file or directory
| # include <gnu/stubs-soft.h>

Quoted 10 lines

multilib:
| nightly-multilib/build/build/tmp/sysroots/qemumips64/usr/include/gnu/stubs.h:35:33:
fatal error: gnu/stubs-n64_hard.h: No such file or directory
| # include <gnu/stubs-n64_hard.h>

The full build log links can be found in "nightly 1121" section here:
https://wiki.yoctoproject.org/wiki/BuildLog#nightly_1121_-_r
oss.2Fmut_1dc1894e05ef0f3aeeefa61ed89613f17bba2e83

I'll have a look at these when I'm back in the office in January. x32 isn't something that I build, but I did build sato, so this is something specific to that config. Should be easy enough to reproduce on my builder.

Cheers,

Bruce

Quoted 11 lines

Cheers,
Jussi

--
_______________________________________________
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"
#4 lore raw

Re: [PATCH 1/2] linux-libc-headers: introduce 4.9 headers

In reply to Jussi Kukkonen
Quoted 24 lines · Jussi Kukkonen
Quoted 6 lines · On 22 December 2016 at 16:49, Bruce Ashfield <[email protected]…

Bumping the linux-libc-headers to the 4.9 kernel variant. Since 4.9 will be a LTSI kernel, and there will be an associated linux-yocto it is worth moving to these headers sooner rather than later.

This commit also drops the 4.8 headers and sets 4.9 to be the default.

The autobuilder run (ross/mut 1dc1894e05) with this had a couple of issues:

*** ppp fails to build on musl:
https://bugzilla.yoctoproject.org/show_bug.cgi?id=10853

*** ncurses fails in several builds, all gnu/stubs.h related:
ncurses was also upgraded in this AB run (CCing Huang Qiyu) but the failures seem more like libc related...

x32:
| nightly-x32/build/build/tmp/sysroots/qemux86-64/usr/include/gnu/stubs.h:10:27:
fatal error: gnu/stubs-64.h: No such file or directory
| # include <gnu/stubs-64.h>

Quoted 5 lines

arm:
| nightly-arm/build/build/tmp/sysroots/beaglebone/usr/include/gnu/stubs.h:7:29:
fatal error: gnu/stubs-soft.h: No such file or directory
| # include <gnu/stubs-soft.h>

FYI: I was just able to build all variants on ncurses on the branches I have available.

I'm going to need a bit more direction on what branch/config to build to see this breakage.

Bruce

Quoted 13 lines

multilib:
| nightly-multilib/build/build/tmp/sysroots/qemumips64/usr/include/gnu/stubs.h:35:33:
fatal error: gnu/stubs-n64_hard.h: No such file or directory
| # include <gnu/stubs-n64_hard.h>

The full build log links can be found in "nightly 1121" section here:
https://wiki.yoctoproject.org/wiki/BuildLog#nightly_1121_-_ross.2Fmut_1dc1894e05ef0f3aeeefa61ed89613f17bba2e83

Cheers,
Jussi

#5 lore raw

PATCH 2/2 kernel: introduce linux-yocto v4.9 recipes

In reply to Bruce Ashfield

Introducing the 4.9 kernel recipes. 4.9 will be a LTSI kernel, so we introduce these recipes with the intent that they'll replace 4.1 as the LTSI kernel, and other older kernels (i.e 4.4/4.8) once 4.9 shown to be stable.

linux-yocto-tiny and linux-yocto-rt are also part of this commit, but are placeholders while we wait for their content to be available. They will build, but provide nothing above the standard kernel at the moment.

---
 meta/recipes-kernel/linux/linux-yocto-rt_4.9.bb   | 38 ++++++++++++++++++++
 meta/recipes-kernel/linux/linux-yocto-tiny_4.9.bb | 25 +++++++++++++
 meta/recipes-kernel/linux/linux-yocto_4.9.bb      | 44 +++++++++++++++++++++++
 3 files changed, 107 insertions(+)
 create mode 100644 meta/recipes-kernel/linux/linux-yocto-rt_4.9.bb
 create mode 100644 meta/recipes-kernel/linux/linux-yocto-tiny_4.9.bb
 create mode 100644 meta/recipes-kernel/linux/linux-yocto_4.9.bb
meta/recipes-kernel/linux/linux-yocto-rt_4.9.bb new file +38 -0
new file mode 100644
index 000000000000..2f1c6523147c
@@ -0,0 +1,38 @@
+KBRANCH ?= "standard/preempt-rt/base"
+
+require recipes-kernel/linux/linux-yocto.inc
+
+# Skip processing of this recipe if it is not explicitly specified as the
+# PREFERRED_PROVIDER for virtual/kernel. This avoids errors when trying
+# to build multiple virtual/kernel providers, e.g. as dependency of
+# core-image-rt-sdk, core-image-rt.
+python () {
+    if d.getVar("PREFERRED_PROVIDER_virtual/kernel") != "linux-yocto-rt":
+        raise bb.parse.SkipPackage("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
+}
+
+SRCREV_machine ?= "617635e43afee1aaf98a8f8300596f7a112513c0"
+SRCREV_meta ?= "c56f2da94e4773ea25eebfd14200164ef21730a3"
+
+SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.9.git;branch=${KBRANCH};name=machine \
+           git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.9;destsuffix=${KMETA}"
+
+LINUX_VERSION ?= "4.9"
+
+PV = "${LINUX_VERSION}+git${SRCPV}"
+
+KMETA = "kernel-meta"
+KCONF_BSP_AUDIT_LEVEL = "2"
+
+LINUX_KERNEL_TYPE = "preempt-rt"
+
+COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm|qemuppc|qemumips)"
+
+KERNEL_DEVICETREE_qemuarm = "versatile-pb.dtb"
+
+# Functionality flags
+KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc"
+KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
+KERNEL_FEATURES_append_qemuall=" cfg/virtio.scc"
+KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
+KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc"
meta/recipes-kernel/linux/linux-yocto-tiny_4.9.bb new file +25 -0
new file mode 100644
index 000000000000..62df631f3539
@@ -0,0 +1,25 @@
+KBRANCH ?= "standard/tiny/common-pc"
+LINUX_KERNEL_TYPE = "tiny"
+KCONFIG_MODE = "--allnoconfig"
+
+require recipes-kernel/linux/linux-yocto.inc
+
+LINUX_VERSION ?= "4.9"
+
+KMETA = "kernel-meta"
+KCONF_BSP_AUDIT_LEVEL = "2"
+
+SRCREV_machine ?= "617635e43afee1aaf98a8f8300596f7a112513c0"
+SRCREV_meta ?= "c56f2da94e4773ea25eebfd14200164ef21730a3"
+
+PV = "${LINUX_VERSION}+git${SRCPV}"
+
+SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.9.git;branch=${KBRANCH};name=machine \
+           git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.9;destsuffix=${KMETA}"
+
+COMPATIBLE_MACHINE = "(qemux86$)"
+
+# Functionality flags
+KERNEL_FEATURES = ""
+
+KERNEL_DEVICETREE_qemuarm = "versatile-pb.dtb"
meta/recipes-kernel/linux/linux-yocto_4.9.bb new file +44 -0

44 lines not on this page · raw message

Signature · 1 line
2.5.0