Skip to contentSkip to conversation

kernel-yocto: misc build / config changes

PATCH In review [email protected] 5 participants 20 messages Aug 14, 2019 – Aug 30, 2019

lore
Share & tools
lore
#0 lore raw

cover kernel-yocto: misc build / config changes

From: Bruce Ashfield <[email protected]>

Hi all,

This pull request is a collection of smaller fixes that I've been collecting while I work through the 5.2/5.3 kernel intro, new libc-headers, etc. There's no reason to make them wait while I finish that work, so here they are in a single branch.

There's nothing major here, just a some legwork changes, licensing update and a short term workaround for embedded host paths in the kernel binaries.

Cheers,

Bruce

The following changes since commit 88c6be81a5fbed098999fbef5576c5e0bb90cc21:

opensbi: handle deploy task under sstate (2019-08-06 11:24:27 +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-devsrc: tweak for v5.3+
kern-tools: Add SPDX license headers to source files
linux-yocto: arch/x86/boot: use prefix map to avoid embedded paths
kernel-yocto: import security fragments from meta-security
kconf_check: tweak CONFIG_ regex

 .../kern-tools/kern-tools-native_git.bb        |  4 ++--
 meta/recipes-kernel/linux/kernel-devsrc.bb     |  4 ++--
 .../linux/linux-yocto-rt_4.19.bb               |  2 +-
 .../recipes-kernel/linux/linux-yocto-rt_5.0.bb |  4 ++--
 .../linux/linux-yocto-tiny_4.19.bb             |  2 +-
 .../linux/linux-yocto-tiny_5.0.bb              |  6 +++---
 meta/recipes-kernel/linux/linux-yocto_4.19.bb  |  2 +-
 meta/recipes-kernel/linux/linux-yocto_5.0.bb   | 18 +++++++++---------
 8 files changed, 21 insertions(+), 21 deletions(-)
Signature · 1 line
2.19.1
#1 lore raw

PATCH 1/5 kernel-devsrc: tweak for v5.3+

From: Bruce Ashfield <[email protected]>

The 5.3 kernel has two changes that require tweaks to the minimal kernel-devsrc package.

- 4ce97317f [x86/purgatory: Do not use __builtin_memcpy and __builtin_memset]

This change removes the need for arch/x86/purgatory/string.c and instead reuses a copy in arch/x86/boot/compressed/, so we can't copy the file anymore. To support older kernels, we make the copy survive the non-existence of the file.

- b1663d7e [docs: Kbuild/Makefile: allow check for missing docs at build time]

This change adds the sourceing of Documentation/Kbuild to the top level Kbuild file. So we now leave the copy of Documention/'s Kbuild in the devsrc.

---
 meta/recipes-kernel/linux/kernel-devsrc.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
meta/recipes-kernel/linux/kernel-devsrc.bb +2 -2
index 5ec5929735..3900489ac5 100644
@@ -65,7 +65,6 @@ do_install() {
     )
 
     # then drop all but the needed Makefiles/Kconfig files
-    rm -rf $kerneldir/build/Documentation
     rm -rf $kerneldir/build/scripts
     rm -rf $kerneldir/build/include
 
@@ -205,11 +204,12 @@ do_install() {
 	    cp -a --parents arch/x86/purgatory/sha256.c $kerneldir/build/ 2>/dev/null || :
 
 	    cp -a --parents arch/x86/purgatory/stack.S $kerneldir/build/
-	    cp -a --parents arch/x86/purgatory/string.c $kerneldir/build/
+	    cp -a --parents arch/x86/purgatory/string.c $kerneldir/build/ 2>/dev/null || :
 	    cp -a --parents arch/x86/purgatory/setup-x86_64.S $kerneldir/build/
 	    cp -a --parents arch/x86/purgatory/entry64.S $kerneldir/build/
 	    cp -a --parents arch/x86/boot/string.h $kerneldir/build/
 	    cp -a --parents arch/x86/boot/string.c $kerneldir/build/
+	    cp -a --parents arch/x86/boot/compressed/string.c $kerneldir/build/ 2>/dev/null || :
 	    cp -a --parents arch/x86/boot/ctype.h $kerneldir/build/
 	fi
 
Signature · 1 line
2.19.1
#2 lore raw

Re: [PATCH 1/5] kernel-devsrc: tweak for v5.3+

Quoted 8 lines · On Wed, 2019-08-14 at 11:31 -0400, [email protected] wrote:

From: Bruce Ashfield <[email protected]>

The 5.3 kernel has two changes that require tweaks to the minimal kernel-devsrc package.

- 4ce97317f [x86/purgatory: Do not use __builtin_memcpy and __builtin_memset]

Quoted 7 lines

This change removes the need for arch/x86/purgatory/string.c and instead reuses a copy in arch/x86/boot/compressed/, so we can't
copy
the file anymore. To support older kernels, we make the copy
survive
the non-existence of the file.

This change was merged in 4.19 stable kernel as well. Can this be merged in our stable branches as well please?

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-4.19.y&id=e0d262a57fc741a9b362e458c714e37a77ddb62d

Thanks,

Anuj

#3 lore raw

Re: [PATCH 1/5] kernel-devsrc: tweak for v5.3+

Quoted 18 lines · Anuj
Quoted 8 lines · On Wed, 2019-08-14 at 11:31 -0400, [email protected] wrote:

From: Bruce Ashfield <[email protected]>

The 5.3 kernel has two changes that require tweaks to the minimal kernel-devsrc package.

- 4ce97317f [x86/purgatory: Do not use __builtin_memcpy and __builtin_memset]

Quoted 7 lines

This change removes the need for arch/x86/purgatory/string.c and instead reuses a copy in arch/x86/boot/compressed/, so we can't
copy
the file anymore. To support older kernels, we make the copy
survive
the non-existence of the file.

Quoted 2 lines

This change was merged in 4.19 stable kernel as well. Can this be merged in our stable branches as well please?

It already is (just not pushed), I just wasn't doing -stable updates along with 5.2 intro .. there's only so many things I can debug and regression test at one time. Hopefully I'll get through the 5.2 work soon and finish the rest of my queue.

Cheers,

Bruce

Quoted 6 lines

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-4.19.y&id=e0d262a57fc741a9b362e458c714e37a77ddb62d

Thanks,

Anuj

Signature · 3 lines
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
#4 lore raw

Re: [PATCH 1/5] kernel-devsrc: tweak for v5.3+

Quoted 20 lines · Bruce Ashfield
Quoted 18 lines · Anuj
Quoted 16 lines · On Wed, 2019-08-14 at 11:31 -0400, [email protected] wrote:

From: Bruce Ashfield <[email protected]>

The 5.3 kernel has two changes that require tweaks to the minimal kernel-devsrc package.

- 4ce97317f [x86/purgatory: Do not use __builtin_memcpy and __builtin_memset]

This change removes the need for arch/x86/purgatory/string.c
and
instead reuses a copy in arch/x86/boot/compressed/, so we can't
copy
the file anymore. To support older kernels, we make the copy
survive
the non-existence of the file.

Quoted 7 lines
Quoted 2 lines

This change was merged in 4.19 stable kernel as well. Can this be merged in our stable branches as well please?

It already is (just not pushed), I just wasn't doing -stable updates along with 5.2 intro .. there's only so many things I can debug and regression test at one time. Hopefully I'll get through the 5.2 work soon and finish the rest of my queue.

Thank you Bruce. I meant that this kernel-devsrc fix should be merged in yocto stable branch, warrior, regardless of the 4.19 kernel version there.

Thanks,

Anuj

#5 lore raw

Re: [PATCH 1/5] kernel-devsrc: tweak for v5.3+

Quoted 25 lines · Anuj
Quoted 23 lines · Bruce Ashfield
Quoted 20 lines · Anuj
Quoted 8 lines · On Wed, 2019-08-14 at 11:31 -0400, [email protected] wrote:

From: Bruce Ashfield <[email protected]>

The 5.3 kernel has two changes that require tweaks to the minimal kernel-devsrc package.

- 4ce97317f [x86/purgatory: Do not use __builtin_memcpy and __builtin_memset]

Quoted 8 lines

This change removes the need for arch/x86/purgatory/string.c
and
instead reuses a copy in arch/x86/boot/compressed/, so we can't
copy
the file anymore. To support older kernels, we make the copy
survive
the non-existence of the file.

This change was merged in 4.19 stable kernel as well. Can this be merged in our stable branches as well please?

Quoted 8 lines
Quoted 4 lines

It already is (just not pushed), I just wasn't doing -stable updates along with 5.2 intro .. there's only so many things I can debug and regression test at one time. Hopefully I'll get through the 5.2 work soon and finish the rest of my queue.

Thank you Bruce. I meant that this kernel-devsrc fix should be merged in yocto stable branch, warrior, regardless of the 4.19 kernel version there.

Aha. gotcha. I'll send it along to -stable once we've sorted out the current set of issues.

Bruce

Quoted 4 lines

Thanks,

Anuj

Signature · 3 lines
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
#6 lore raw

PATCH 2/5 kern-tools: Add SPDX license headers to source files

In reply to [email protected]

From: Bruce Ashfield <[email protected]>

Integrating the following commit:

Add SPDX license headers to source files

Kconfiglib/* were under ISC license before they were imported here from https://github.com/ulfalizer/Kconfiglib
Adjusting SPDX header to reflect that fact.

tools/* all have some sort of GPLv2 headers; adding SPDX header to make it obvious.

This address bug #13334 :
https://bugzilla.yoctoproject.org/show_bug.cgi?id=13334

Change-Id I243f2dd266a398f982798b771e74a67be70ecb52
---
 meta/recipes-kernel/kern-tools/kern-tools-native_git.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
meta/recipes-kernel/kern-tools/kern-tools-native_git.bb +2 -2
index 5c1d7f691f..c8e736a987 100644
@@ -1,10 +1,10 @@
 SUMMARY = "Tools for managing Yocto Project style branched kernels"
 LICENSE = "GPLv2"
-LIC_FILES_CHKSUM = "file://git/tools/kgit;beginline=5;endline=9;md5=a6c2fa8aef1bda400e2828845ba0d06c"
+LIC_FILES_CHKSUM = "file://git/tools/kgit;beginline=5;endline=9;md5=9c30e971d435e249624278c3e343e501"
 
 DEPENDS = "git-native"
 
-SRCREV = "af1a779f662c81da521e4d602f3c6446547d12a2"
+SRCREV = "7604d2d1a49d88e38d5b5854209dc1435b790893"
 PR = "r12"
 PV = "0.2+git${SRCPV}"
 
Signature · 1 line
2.19.1
#7 lore raw

PATCH 3/5 linux-yocto: arch/x86/boot: use prefix map to avoid embedded paths

In reply to [email protected]

From: Bruce Ashfield <[email protected]>

From the kernel patch:

[
It was observed that the kernel embeds the path in the x86 boot artifacts.

From https://bugzilla.yoctoproject.org/show_bug.cgi?id=13458:

[
If you turn on the buildpaths QA test, or try a reproducible build, you discover that the kernel image contains build paths.

$ strings bzImage-5.0.19-yocto-standard |grep tmp/
out of pgt_buf in /data/poky-tmp/reproducible/tmp/work-shared/qemux86-64/kernel-source/arch/x86/boot/compressed/kaslr_64.c!?

But what's this in the top-level Makefile:

$ git grep prefix-map
Makefile:KBUILD_CFLAGS += $(call
cc-option,-fmacro-prefix-map=$(srctree)/=)

So the __FILE__ shouldn't be using the full path. However arch/x86/boot/compressed/Makefile has this:

KBUILD_CFLAGS := -m$(BITS) -O2

So that clears KBUILD_FLAGS, removing the -fmacro-prefix-map option.
]

Other architectures do not clear the flags, but instead prune before adding boot or specific options. There's no obvious reason why x86 isn't doing the same thing (pruning vs clearing) and no build or boot issues have been observed.

So we make x86 can do the same thing, and we no longer have embedded paths.
]

This issue has been reported upstream, and a patch submission is pending, but for now, we'll soak the proposed patch in linux-yocto to see if any issues are found

[YOCTO: #13458]

---
 .../recipes-kernel/linux/linux-yocto-rt_5.0.bb |  4 ++--
 .../linux/linux-yocto-tiny_5.0.bb              |  6 +++---
 meta/recipes-kernel/linux/linux-yocto_5.0.bb   | 18 +++++++++---------
 3 files changed, 14 insertions(+), 14 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_5.0.bb +2 -2
index 9e822f2e7f..f66ee6f4ad 100644
@@ -11,8 +11,8 @@ python () {
         raise bb.parse.SkipRecipe("Set PREFERRED_PROVIDER_virtual/kernel to linux-yocto-rt to enable it")
 }
 
-SRCREV_machine ?= "9c1e84c9b81b6bf1df55f26f2e0517266c37f7eb"
-SRCREV_meta ?= "c2e34d9ab2894edc6abc6be9ac89907bf4348447"
+SRCREV_machine ?= "e6cb812b5532630b6fc6dfd7778d57a4907d3180"
+SRCREV_meta ?= "96c82f3d7ab25a3f44e517f9dbbb53e2c4c45729"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.0;destsuffix=${KMETA}"
meta/recipes-kernel/linux/linux-yocto-tiny_5.0.bb +3 -3
index a1719651b6..42e0dcd603 100644
@@ -15,9 +15,9 @@ DEPENDS += "openssl-native util-linux-native"
 KMETA = "kernel-meta"
 KCONF_BSP_AUDIT_LEVEL = "2"
 
-SRCREV_machine_qemuarm ?= "fabee455f397ba8054f35a3ad5f2250bbad93bef"
-SRCREV_machine ?= "00638cdd8f92869a0f89ebe3289fdbd856ba9458"
-SRCREV_meta ?= "c2e34d9ab2894edc6abc6be9ac89907bf4348447"
+SRCREV_machine_qemuarm ?= "b9001287984b0066814c8739f38d629de73739b7"
+SRCREV_machine ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
+SRCREV_meta ?= "96c82f3d7ab25a3f44e517f9dbbb53e2c4c45729"
 
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
meta/recipes-kernel/linux/linux-yocto_5.0.bb +9 -9
index 0e4a372d2d..ea4b6f5b33 100644
@@ -12,16 +12,16 @@ KBRANCH_qemux86  ?= "v5.0/standard/base"
 KBRANCH_qemux86-64 ?= "v5.0/standard/base"
 KBRANCH_qemumips64 ?= "v5.0/standard/mti-malta64"
 
-SRCREV_machine_qemuarm ?= "9161b2fa2f1cec0ba02976c389c788445858e0de"
-SRCREV_machine_qemuarm64 ?= "00638cdd8f92869a0f89ebe3289fdbd856ba9458"
-SRCREV_machine_qemumips ?= "7de9b8f0db98e51a666477c8e2b64f1964b45410"
-SRCREV_machine_qemuppc ?= "00638cdd8f92869a0f89ebe3289fdbd856ba9458"
+SRCREV_machine_qemuarm ?= "d1ed980ad989252d42386c8bc63b2f5f11985ea4"
+SRCREV_machine_qemuarm64 ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
+SRCREV_machine_qemumips ?= "1520e78195e64f27be46a46a8d6711c8470fb083"
+SRCREV_machine_qemuppc ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
 SRCREV_machine_qemuriscv64 ?= "00638cdd8f92869a0f89ebe3289fdbd856ba9458"
-SRCREV_machine_qemux86 ?= "00638cdd8f92869a0f89ebe3289fdbd856ba9458"
-SRCREV_machine_qemux86-64 ?= "00638cdd8f92869a0f89ebe3289fdbd856ba9458"
-SRCREV_machine_qemumips64 ?= "5a8b27bcc0b16077ab8edfcd3fb25c80dc2c652e"
-SRCREV_machine ?= "00638cdd8f92869a0f89ebe3289fdbd856ba9458"
-SRCREV_meta ?= "c2e34d9ab2894edc6abc6be9ac89907bf4348447"
+SRCREV_machine_qemux86 ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
+SRCREV_machine_qemux86-64 ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
+SRCREV_machine_qemumips64 ?= "9d4105b32cf123a861bc754377d2f2e156278a7e"
+SRCREV_machine ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
+SRCREV_meta ?= "96c82f3d7ab25a3f44e517f9dbbb53e2c4c45729"
 
 # remap qemuarm to qemuarma15 for the 5.0 kernel
 # KMACHINE_qemuarm ?= "qemuarma15"
Signature · 1 line
2.19.1
#8 lore raw

PATCH 4/5 kernel-yocto: import security fragments from meta-security

In reply to [email protected]

From: Bruce Ashfield <[email protected]>

Adding the following fragments from meta-security to make them centrally available and easier to maintain:

283939d5c9e kernel-cache: add yama security fragments 0b86f3fa241 kernel-cache: add ima fragments 731b466654d kernel-cache: add smack 813afe8ff47 kernel-cache: add apparmor fragments

---
 meta/recipes-kernel/linux/linux-yocto-rt_4.19.bb   | 2 +-
 meta/recipes-kernel/linux/linux-yocto-rt_5.0.bb    | 2 +-
 meta/recipes-kernel/linux/linux-yocto-tiny_4.19.bb | 2 +-
 meta/recipes-kernel/linux/linux-yocto-tiny_5.0.bb  | 2 +-
 meta/recipes-kernel/linux/linux-yocto_4.19.bb      | 2 +-
 meta/recipes-kernel/linux/linux-yocto_5.0.bb       | 2 +-
 6 files changed, 6 insertions(+), 6 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_4.19.bb +1 -1
index 4013a0c2d0..52deb3fc86 100644
@@ -12,7 +12,7 @@ python () {
 }
 
 SRCREV_machine ?= "ca2e3322f4c5678eaef6434c808d0842c805d74d"
-SRCREV_meta ?= "960be4218436fbbb3500e019f7abf02fa94e6aac"
+SRCREV_meta ?= "283939d5c9ebec9750c34982405a39a9864ac10f"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.19;destsuffix=${KMETA}"
meta/recipes-kernel/linux/linux-yocto-rt_5.0.bb +1 -1
index f66ee6f4ad..b214ee0a0a 100644
@@ -12,7 +12,7 @@ python () {
 }
 
 SRCREV_machine ?= "e6cb812b5532630b6fc6dfd7778d57a4907d3180"
-SRCREV_meta ?= "96c82f3d7ab25a3f44e517f9dbbb53e2c4c45729"
+SRCREV_meta ?= "7f6e97c357746382d4339e7e0463637e715acd4b"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;branch=${KBRANCH};name=machine \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-5.0;destsuffix=${KMETA}"
meta/recipes-kernel/linux/linux-yocto-tiny_4.19.bb +1 -1
index 4759d80438..be25d075de 100644
@@ -17,7 +17,7 @@ KCONF_BSP_AUDIT_LEVEL = "2"
 
 SRCREV_machine_qemuarm ?= "b5a2efa31290f31384971494031285d394635938"
 SRCREV_machine ?= "4ec6f255163da37a4c83528e5835b6b9baccee63"
-SRCREV_meta ?= "960be4218436fbbb3500e019f7abf02fa94e6aac"
+SRCREV_meta ?= "283939d5c9ebec9750c34982405a39a9864ac10f"
 
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
meta/recipes-kernel/linux/linux-yocto-tiny_5.0.bb +1 -1
index 42e0dcd603..33672c6d49 100644
@@ -17,7 +17,7 @@ KCONF_BSP_AUDIT_LEVEL = "2"
 
 SRCREV_machine_qemuarm ?= "b9001287984b0066814c8739f38d629de73739b7"
 SRCREV_machine ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
-SRCREV_meta ?= "96c82f3d7ab25a3f44e517f9dbbb53e2c4c45729"
+SRCREV_meta ?= "7f6e97c357746382d4339e7e0463637e715acd4b"
 
 PV = "${LINUX_VERSION}+git${SRCPV}"
 
meta/recipes-kernel/linux/linux-yocto_4.19.bb +1 -1
index cee8af7c99..7704bd3e55 100644
@@ -19,7 +19,7 @@ SRCREV_machine_qemux86 ?= "4ec6f255163da37a4c83528e5835b6b9baccee63"
 SRCREV_machine_qemux86-64 ?= "4ec6f255163da37a4c83528e5835b6b9baccee63"
 SRCREV_machine_qemumips64 ?= "ca47368b698795cd5cada84dbfcceda1f47da1aa"
 SRCREV_machine ?= "4ec6f255163da37a4c83528e5835b6b9baccee63"
-SRCREV_meta ?= "960be4218436fbbb3500e019f7abf02fa94e6aac"
+SRCREV_meta ?= "283939d5c9ebec9750c34982405a39a9864ac10f"
 
 SRC_URI = "git://git.yoctoproject.org/linux-yocto.git;name=machine;branch=${KBRANCH}; \
            git://git.yoctoproject.org/yocto-kernel-cache;type=kmeta;name=meta;branch=yocto-4.19;destsuffix=${KMETA} \
meta/recipes-kernel/linux/linux-yocto_5.0.bb +1 -1
index ea4b6f5b33..898f824d48 100644
@@ -21,7 +21,7 @@ SRCREV_machine_qemux86 ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
 SRCREV_machine_qemux86-64 ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
 SRCREV_machine_qemumips64 ?= "9d4105b32cf123a861bc754377d2f2e156278a7e"
 SRCREV_machine ?= "55dd15336b7301b686a0c183f5372b49c1003d03"
-SRCREV_meta ?= "96c82f3d7ab25a3f44e517f9dbbb53e2c4c45729"
+SRCREV_meta ?= "7f6e97c357746382d4339e7e0463637e715acd4b"
 
 # remap qemuarm to qemuarma15 for the 5.0 kernel
 # KMACHINE_qemuarm ?= "qemuarma15"
Signature · 1 line
2.19.1
#9 lore raw

PATCH 5/5 kconf_check: tweak CONFIG_ regex

In reply to [email protected]

From: Bruce Ashfield <[email protected]>

As reported in https://bugzilla.yoctoproject.org/show_bug.cgi?id=12563,
the regex that matches valid CONFIG_ options was missing some of the ones in net/netfilter/ipvs/Kconfig, and hence triggering invalid option warnings.

By dropping the trailing space on the regex, we'll cover all the cases for valid option.

---
 meta/recipes-kernel/kern-tools/kern-tools-native_git.bb | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-kernel/kern-tools/kern-tools-native_git.bb +1 -1
index c8e736a987..8ca7193c8c 100644
@@ -4,7 +4,7 @@ LIC_FILES_CHKSUM = "file://git/tools/kgit;beginline=5;endline=9;md5=9c30e971d435
 
 DEPENDS = "git-native"
 
-SRCREV = "7604d2d1a49d88e38d5b5854209dc1435b790893"
+SRCREV = "bb6df0ef2365689cd3df6f76a8838cddae0d9343"
 PR = "r12"
 PV = "0.2+git${SRCPV}"
 
Signature · 1 line
2.19.1
#10 lore raw

✗ patchtest: failure for kernel-yocto: misc build / config changes

In reply to [email protected]

== Series Details ==

Series: kernel-yocto: misc build / config changes
Revision: 1
URL : https://patchwork.openembedded.org/series/19276/
State : failure

== Summary ==

Thank you for submitting this patch series to OpenEmbedded Core. This is an automated response. Several tests have been executed on the proposed series by patchtest resulting in the following failures:

* Patch            [3/5] linux-yocto: arch/x86/boot: use prefix map to avoid embedded paths
 Issue             Yocto Project bugzilla tag is not correctly formatted [test_bugzilla_entry_format] 
  Suggested fix    Specify bugzilla ID in commit description with format: "[YOCTO #<bugzilla ID>]"

If you believe any of these test results are incorrect, please reply to the mailing list ([email protected]) raising your concerns. Otherwise we would appreciate you correcting the issues and submitting a new version of the patchset if applicable. Please ensure you add/increment the version number when sending the new version (i.e. [PATCH] -> [PATCH v2] -> [PATCH v3] -> ...).

---

Guidelines:     https://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines
Test framework: http://git.yoctoproject.org/cgit/cgit.cgi/patchtest
Test suite:     http://git.yoctoproject.org/cgit/cgit.cgi/patchtest-oe
#11 lore raw
In reply to [email protected]
Quoted 12 lines · On Wed, 2019-08-14 at 11:31 -0400, [email protected] wrote:

From: Bruce Ashfield <[email protected]>

Hi all,

This pull request is a collection of smaller fixes that I've been collecting
while I work through the 5.2/5.3 kernel intro, new libc-headers, etc. There's
no reason to make them wait while I finish that work, so here they are in a
single branch.

Quoted 4 lines

There's nothing major here, just a some legwork changes, licensing update
and a short term workaround for embedded host paths in the kernel binaries.

There appear to be a few issues with the new headers. ppc looks to have particular issues:

https://autobuilder.yoctoproject.org/typhoon/#/builders/70/builds/976

eudev:

util.lo ../../../eudev-3.2.8/src/shared/sysctl-util.c

| ../../../eudev-3.2.8/src/shared/log.c: In function 'create_log_socket':
| ../../../eudev-3.2.8/src/shared/log.c:123:43: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
|   123 |         (void) setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
|       |                                           ^~~~~~~~~~~
|       |                                           SO_TXTIME
| ../../../eudev-3.2.8/src/shared/log.c:123:43: note: each undeclared identifier is reported only once for each function it appears in

neard:

../neard-0.16/plugins/p2p.c: In function 'p2p_connect_blocking':
../neard-0.16/plugins/p2p.c:324:33: error: 'SO_RCVTIMEO' undeclared (first use in this function); did you mean 'SO_RCVTIMEO_OLD'?

  324 |  if (setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_RCVTIMEO_OLD
../neard-0.16/plugins/p2p.c:324:33: note: each undeclared identifier is reported only once for each function it appears in
../neard-0.16/plugins/p2p.c:328:33: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
  328 |  if (setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_TXTIME
../neard-0.16/plugins/p2p.c: In function 'p2p_connect':
../neard-0.16/plugins/p2p.c:555:33: error: 'SO_RCVTIMEO' undeclared (first use in this function); did you mean 'SO_RCVTIMEO_OLD'?
  555 |  if (setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_RCVTIMEO_OLD
../neard-0.16/plugins/p2p.c:559:33: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
  559 |  if (setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_TXTIME

Makefile:1973: recipe for target 'plugins/src_neard-p2p.o' failed make[1]: *** [plugins/src_neard-p2p.o] Error 1

and errors from lttng-ust (cc'd Jonathan).

qemuarm is erroring due to /dev/fb0 disappearing, which is probably kernel?

https://autobuilder.yoctoproject.org/typhoon/#/builders/53/builds/975
https://autobuilder.yoctoproject.org/typhoon/#/builders/38/builds/976
https://autobuilder.yoctoproject.org/typhoon/#/builders/47/builds/986

and we also have an unintended side effect multilib build failure:

https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/995

which might be due to changed dependencies, I need to check into that one further.

Cheers,

Richard

#12 lore raw
Quoted 19 lines · On Thu, Aug 29, 2019 at 5:29 AM <[email protected]> wrote:
Quoted 12 lines · On Wed, 2019-08-14 at 11:31 -0400, [email protected] wrote:

From: Bruce Ashfield <[email protected]>

Hi all,

This pull request is a collection of smaller fixes that I've been collecting
while I work through the 5.2/5.3 kernel intro, new libc-headers, etc. There's
no reason to make them wait while I finish that work, so here they are in a
single branch.

Quoted 4 lines

There's nothing major here, just a some legwork changes, licensing update
and a short term workaround for embedded host paths in the kernel binaries.

Quoted 5 lines

There appear to be a few issues with the new headers. ppc looks to have particular issues:

https://autobuilder.yoctoproject.org/typhoon/#/builders/70/builds/976

Hmmm. Those must be packages not covered in my build testing. I will have a look .. but for some of these packages, I really have no idea and just search up the error and hope upstream has a fix :D

Cheers,

Bruce

Quoted 53 lines

eudev:

util.lo ../../../eudev-3.2.8/src/shared/sysctl-util.c

| ../../../eudev-3.2.8/src/shared/log.c: In function 'create_log_socket':
| ../../../eudev-3.2.8/src/shared/log.c:123:43: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
|   123 |         (void) setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
|       |                                           ^~~~~~~~~~~
|       |                                           SO_TXTIME
| ../../../eudev-3.2.8/src/shared/log.c:123:43: note: each undeclared identifier is reported only once for each function it appears in

neard:

../neard-0.16/plugins/p2p.c: In function 'p2p_connect_blocking':
../neard-0.16/plugins/p2p.c:324:33: error: 'SO_RCVTIMEO' undeclared (first use in this function); did you mean 'SO_RCVTIMEO_OLD'?

  324 |  if (setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_RCVTIMEO_OLD
../neard-0.16/plugins/p2p.c:324:33: note: each undeclared identifier is reported only once for each function it appears in
../neard-0.16/plugins/p2p.c:328:33: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
  328 |  if (setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_TXTIME
../neard-0.16/plugins/p2p.c: In function 'p2p_connect':
../neard-0.16/plugins/p2p.c:555:33: error: 'SO_RCVTIMEO' undeclared (first use in this function); did you mean 'SO_RCVTIMEO_OLD'?
  555 |  if (setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_RCVTIMEO_OLD
../neard-0.16/plugins/p2p.c:559:33: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
  559 |  if (setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_TXTIME

Makefile:1973: recipe for target 'plugins/src_neard-p2p.o' failed make[1]: *** [plugins/src_neard-p2p.o] Error 1

and errors from lttng-ust (cc'd Jonathan).

qemuarm is erroring due to /dev/fb0 disappearing, which is probably kernel?

https://autobuilder.yoctoproject.org/typhoon/#/builders/53/builds/975
https://autobuilder.yoctoproject.org/typhoon/#/builders/38/builds/976
https://autobuilder.yoctoproject.org/typhoon/#/builders/47/builds/986

and we also have an unintended side effect multilib build failure:

https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/995

which might be due to changed dependencies, I need to check into that one further.

Cheers,

Richard

Signature · 3 lines
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
#13 lore raw
Quoted 27 lines · Bruce Ashfield
Quoted 19 lines · On Thu, Aug 29, 2019 at 5:29 AM <[email protected]> wrote:
Quoted 12 lines · On Wed, 2019-08-14 at 11:31 -0400, [email protected] wrote:

From: Bruce Ashfield <[email protected]>

Hi all,

This pull request is a collection of smaller fixes that I've been collecting
while I work through the 5.2/5.3 kernel intro, new libc-headers, etc. There's
no reason to make them wait while I finish that work, so here they are in a
single branch.

Quoted 4 lines

There's nothing major here, just a some legwork changes, licensing update
and a short term workaround for embedded host paths in the kernel binaries.

Quoted 5 lines

There appear to be a few issues with the new headers. ppc looks to have particular issues:

https://autobuilder.yoctoproject.org/typhoon/#/builders/70/builds/976

Quoted 43 lines

Hmmm. Those must be packages not covered in my build testing. I will have a look .. but for some of these packages, I really have no idea and just search up the error and hope upstream has a fix :D

Cheers,

Bruce

Quoted 35 lines

eudev:

util.lo ../../../eudev-3.2.8/src/shared/sysctl-util.c

| ../../../eudev-3.2.8/src/shared/log.c: In function 'create_log_socket':
| ../../../eudev-3.2.8/src/shared/log.c:123:43: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
|   123 |         (void) setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
|       |                                           ^~~~~~~~~~~
|       |                                           SO_TXTIME
| ../../../eudev-3.2.8/src/shared/log.c:123:43: note: each undeclared identifier is reported only once for each function it appears in

neard:

../neard-0.16/plugins/p2p.c: In function 'p2p_connect_blocking':
../neard-0.16/plugins/p2p.c:324:33: error: 'SO_RCVTIMEO' undeclared (first use in this function); did you mean 'SO_RCVTIMEO_OLD'?

  324 |  if (setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_RCVTIMEO_OLD
../neard-0.16/plugins/p2p.c:324:33: note: each undeclared identifier is reported only once for each function it appears in
../neard-0.16/plugins/p2p.c:328:33: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
  328 |  if (setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_TXTIME
../neard-0.16/plugins/p2p.c: In function 'p2p_connect':
../neard-0.16/plugins/p2p.c:555:33: error: 'SO_RCVTIMEO' undeclared (first use in this function); did you mean 'SO_RCVTIMEO_OLD'?
  555 |  if (setsockopt(fd, SOL_SOCKET, SO_RCVTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_RCVTIMEO_OLD
../neard-0.16/plugins/p2p.c:559:33: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
  559 |  if (setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, (char *)&timeout,
      |                                 ^~~~~~~~~~~
      |                                 SO_TXTIME

Makefile:1973: recipe for target 'plugins/src_neard-p2p.o' failed make[1]: *** [plugins/src_neard-p2p.o] Error 1

and errors from lttng-ust (cc'd Jonathan).

FWIW: lttng-ust builds fine for me with the 5.2 kernel + 5.2 headers, it is one of the things I build and test as part of core-image-kernel-dev.

I just rebuilt it here this morning and didn't see any errors.

Bruce

Quoted 24 lines
Quoted 9 lines

qemuarm is erroring due to /dev/fb0 disappearing, which is probably kernel?

https://autobuilder.yoctoproject.org/typhoon/#/builders/53/builds/975
https://autobuilder.yoctoproject.org/typhoon/#/builders/38/builds/976
https://autobuilder.yoctoproject.org/typhoon/#/builders/47/builds/986

and we also have an unintended side effect multilib build failure:

Quoted 9 lines

https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/995

which might be due to changed dependencies, I need to check into that one further.

Cheers,

Richard

--
- Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end
- "Use the force Harry" - Gandalf, Star Trek II

Signature · 3 lines
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
#14 lore raw
Quoted 4 lines

FWIW: lttng-ust builds fine for me with the 5.2 kernel + 5.2 headers, it is one of the things I build and test as part of core-image-kernel-dev.

Even on ppc?

It seems related to the y2038 safe socket merge (a98dc6aee784a5daf84a4781dcf02feab9ad5999) from the kernel but from the code I cannot find a reason why SO_SNDTIMEO would be missing. The powerpc socket header relies on the generic one for proper backward definition of SO_SNDTIMEO:

#define SO_SNDTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_SNDTIMEO_OLD : SO_SNDTIMEO_NEW)

Not sure what is going on here.

Quoted 34 lines

I just rebuilt it here this morning and didn't see any errors.

Quoted 24 lines
Quoted 9 lines

qemuarm is erroring due to /dev/fb0 disappearing, which is probably kernel?

https://autobuilder.yoctoproject.org/typhoon/#/builders/53/builds/975
https://autobuilder.yoctoproject.org/typhoon/#/builders/38/builds/976
https://autobuilder.yoctoproject.org/typhoon/#/builders/47/builds/986

and we also have an unintended side effect multilib build failure:

Quoted 9 lines

https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/995

which might be due to changed dependencies, I need to check into that one further.

Cheers,

Richard

--
- Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end
- "Use the force Harry" - Gandalf, Star Trek II

Signature · 3 lines
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
Signature · 2 lines
Jonathan Rajotte-Julien
EfficiOS
#15 lore raw
Quoted 8 lines · Jonathan Rajotte-Julien
Quoted 5 lines

FWIW: lttng-ust builds fine for me with the 5.2 kernel + 5.2 headers, it is one of the things I build and test as part of core-image-kernel-dev.

Even on ppc?

yup. I build all arches for core-image-kernel-dev, which includes all of lttng.

Bruce

Quoted 49 lines

It seems related to the y2038 safe socket merge (a98dc6aee784a5daf84a4781dcf02feab9ad5999) from the kernel but from the code I cannot find a reason why SO_SNDTIMEO would be missing. The powerpc socket header relies on the generic one for proper backward definition of SO_SNDTIMEO:

#define SO_SNDTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_SNDTIMEO_OLD : SO_SNDTIMEO_NEW)

Not sure what is going on here.

Quoted 30 lines

I just rebuilt it here this morning and didn't see any errors.

Quoted 20 lines
Quoted 9 lines

qemuarm is erroring due to /dev/fb0 disappearing, which is probably kernel?

https://autobuilder.yoctoproject.org/typhoon/#/builders/53/builds/975
https://autobuilder.yoctoproject.org/typhoon/#/builders/38/builds/976
https://autobuilder.yoctoproject.org/typhoon/#/builders/47/builds/986

and we also have an unintended side effect multilib build failure:

Quoted 9 lines

https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/995

which might be due to changed dependencies, I need to check into that one further.

Cheers,

Richard

Quoted 4 lines

--
- Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end
- "Use the force Harry" - Gandalf, Star Trek II

Quoted 4 lines

--
- Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end
- "Use the force Harry" - Gandalf, Star Trek II

--
Jonathan Rajotte-Julien
EfficiOS

Signature · 3 lines
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
#16 lore raw
Quoted 5 lines · Bruce Ashfield
Quoted 2 lines · Jonathan Rajotte-Julien
Quoted 2 lines
Quoted 8 lines
Quoted 6 lines
Quoted 3 lines

FWIW: lttng-ust builds fine for me with the 5.2 kernel + 5.2 headers, it is one of the things I build and test as part of core-image-kernel-dev.

Even on ppc?

yup. I build all arches for core-image-kernel-dev, which includes all of lttng.

but I've recently switched to RP's master-next branch, so hopefully a difference in the configs will pop out.

Bruce

Quoted 59 lines

Bruce

Quoted 41 lines

It seems related to the y2038 safe socket merge (a98dc6aee784a5daf84a4781dcf02feab9ad5999) from the kernel but from the code I cannot find a reason why SO_SNDTIMEO would be missing. The powerpc socket header relies on the generic one for proper backward definition of SO_SNDTIMEO:

#define SO_SNDTIMEO (sizeof(time_t) == sizeof(__kernel_long_t) ? SO_SNDTIMEO_OLD : SO_SNDTIMEO_NEW)

Not sure what is going on here.

Quoted 30 lines

I just rebuilt it here this morning and didn't see any errors.

Quoted 24 lines
Quoted 9 lines

qemuarm is erroring due to /dev/fb0 disappearing, which is probably kernel?

https://autobuilder.yoctoproject.org/typhoon/#/builders/53/builds/975
https://autobuilder.yoctoproject.org/typhoon/#/builders/38/builds/976
https://autobuilder.yoctoproject.org/typhoon/#/builders/47/builds/986

and we also have an unintended side effect multilib build failure:

Quoted 9 lines

https://autobuilder.yoctoproject.org/typhoon/#/builders/44/builds/995

which might be due to changed dependencies, I need to check into that one further.

Cheers,

Richard

--
- Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end
- "Use the force Harry" - Gandalf, Star Trek II

Quoted 8 lines
Quoted 4 lines

--
- Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end
- "Use the force Harry" - Gandalf, Star Trek II

--
Jonathan Rajotte-Julien
EfficiOS

--
- Thou shalt not follow the NULL pointer, for chaos and madness await thee at its end
- "Use the force Harry" - Gandalf, Star Trek II

Signature · 3 lines
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
#17 lore raw
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Bruce Ashfield
Quoted 5 lines · Jonathan Rajotte-Julien
Quoted 4 lines

FWIW: lttng-ust builds fine for me with the 5.2 kernel + 5.2 headers,
it is one of the things I build and test as part of core-image-kernel-dev.

Quoted 8 lines
Quoted 5 lines
Quoted 2 lines

Even on ppc?

yup. I build all arches for core-image-kernel-dev, which includes all of lttng.

but I've recently switched to RP's master-next branch, so hopefully a difference in the configs will pop out.

I'll post here about what I'm finding. eudev fails since SO_SNDTIMEO isn't defined. This comes from asm-generic/socket.h which asm/socket.h include.

richard@jet:work/ppce300c3-poky-linux/eudev/3.2.8-r0/build/src/shared$ /media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot-native/usr/bin/powerpc-poky-linux/powerpc-poky-linux-gcc -m32 -mhard-float -mcpu=e300c3 -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot -DHAVE_CONFIG_H -I. -I../../../eudev-3.2.8/src/shared -I../.. -DUDEV_ROOT_RUN=\"/run\" -include ../../config.h -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0=/usr/src/debug/eudev/3.2.8-r0 -fdebug-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0=/usr/src/debug/eudev/3.2.8-r0 -fdebug-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot= -fdebug-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot-native= -c ../../../eudev-3.2.8/src/shared/log.c  -fPIC -DPIC -o .libs/log.o
../../../eudev-3.2.8/src/shared/log.c: In function 'create_log_socket':
../../../eudev-3.2.8/src/shared/log.c:128:43: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
  128 |         (void) setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
      |                                           ^~~~~~~~~~~
      |                                           SO_TXTIME

The file:
ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot/usr/include/asm-generic/socket.h isn't included.

if I put:

#include <asm-generic/socket.h>

at the top of log.c it will build, everything else doesn't.

Debugging with gcc -e shows its including a different 'interesting' file.

My build has a build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot-native/usr/lib/powerpc-poky-linux/gcc/powerpc-poky-linux/9.2.0/include-fixed/asm-generic/socket.h which looks totally wrong when I compare it to the real asm-generic/socket.h.

Why this is in the toolchain I don't know and I'll have to investigate further.

I worry it depends on which MACHINE you have set when you build gcc-cross-powerpc.

So we have some progress/a lead but more to be done.

Cheers,

Richard

#18 lore raw
Quoted 39 lines · On Fri, Aug 30, 2019 at 10:39 AM <[email protected]> wrote:
Quoted 9 lines · Bruce Ashfield
Quoted 7 lines · Bruce Ashfield
Quoted 5 lines · Jonathan Rajotte-Julien
Quoted 4 lines

FWIW: lttng-ust builds fine for me with the 5.2 kernel + 5.2 headers,
it is one of the things I build and test as part of core-image-kernel-dev.

Quoted 8 lines
Quoted 5 lines
Quoted 2 lines

Even on ppc?

yup. I build all arches for core-image-kernel-dev, which includes all of lttng.

but I've recently switched to RP's master-next branch, so hopefully a difference in the configs will pop out.

I'll post here about what I'm finding. eudev fails since SO_SNDTIMEO isn't defined. This comes from asm-generic/socket.h which asm/socket.h include.

richard@jet:work/ppce300c3-poky-linux/eudev/3.2.8-r0/build/src/shared$ /media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot-native/usr/bin/powerpc-poky-linux/powerpc-poky-linux-gcc -m32 -mhard-float -mcpu=e300c3 -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security --sysroot=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot -DHAVE_CONFIG_H -I. -I../../../eudev-3.2.8/src/shared -I../.. -DUDEV_ROOT_RUN=\"/run\" -include ../../config.h -O2 -pipe -g -feliminate-unused-debug-types -fmacro-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0=/usr/src/debug/eudev/3.2.8-r0 -fdebug-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0=/usr/src/debug/eudev/3.2.8-r0 -fdebug-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot= -fdebug-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot-native= -c ../../../eudev-3.2.8/src/shared/log.c  -fPIC -DPIC -o .libs/log.o
../../../eudev-3.2.8/src/shared/log.c: In function 'create_log_socket':
../../../eudev-3.2.8/src/shared/log.c:128:43: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
  128 |         (void) setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &tv, sizeof(tv));
      |                                           ^~~~~~~~~~~
      |                                           SO_TXTIME

The file:
ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot/usr/include/asm-generic/socket.h isn't included.

if I put:

#include <asm-generic/socket.h>

Quoted 7 lines

at the top of log.c it will build, everything else doesn't.

Debugging with gcc -e shows its including a different 'interesting' file.

My build has a build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot-native/usr/lib/powerpc-poky-linux/gcc/powerpc-poky-linux/9.2.0/include-fixed/asm-generic/socket.h which looks totally wrong when I compare it to the real asm-generic/socket.h.

This is similar to what I was seeing on some early qemuppc builds as well. fixincludes was tossing out the original file and putting in a broken variant. I had to hide the "fixed" files to build. But then it stopped happening, so I moved on.

I'm not familiar with how/when fixincludes fires, so I have no idea about any possible races, etc, that could be happening.

I'll do some more research down that route to see if anything pops up.

Bruce

Quoted 12 lines

Why this is in the toolchain I don't know and I'll have to investigate further.

I worry it depends on which MACHINE you have set when you build gcc-cross-powerpc.

So we have some progress/a lead but more to be done.

Cheers,

Richard

Signature · 3 lines
- Thou shalt not follow the NULL pointer, for chaos and madness await
thee at its end
- "Use the force Harry" - Gandalf, Star Trek II
#19 lore raw
Quoted 84 lines · Bruce Ashfield
Quoted 70 lines · On Fri, Aug 30, 2019 at 10:39 AM <[email protected]> wrote:
Quoted 13 lines · Bruce Ashfield
Quoted 11 lines · Bruce Ashfield
Quoted 8 lines · Jonathan Rajotte-Julien
Quoted 5 lines

FWIW: lttng-ust builds fine for me with the 5.2 kernel + 5.2
headers,
it is one of the things I build and test as part of core-image-kernel-dev.

Even on ppc?

Quoted 7 lines
Quoted 3 lines

yup. I build all arches for core-image-kernel-dev, which includes
all of lttng.

but I've recently switched to RP's master-next branch, so hopefully a
difference in the configs will pop out.

I'll post here about what I'm finding. eudev fails since SO_SNDTIMEO
isn't defined. This comes from asm-generic/socket.h which asm/socket.h
include.

richard@jet:work/ppce300c3-poky-linux/eudev/3.2.8- r0/build/src/shared$ /media/build1/poky/build/tmp/work/ppce300c3- poky-linux/eudev/3.2.8-r0/recipe-sysroot-native/usr/bin/powerpc- poky-linux/powerpc-poky-linux-gcc -m32 -mhard-float -mcpu=e300c3 -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat- security -Werror=format-security -- sysroot=/media/build1/poky/build/tmp/work/ppce300c3-poky- linux/eudev/3.2.8-r0/recipe-sysroot -DHAVE_CONFIG_H -I.

(quoted diff) +0 -3
-I../../../eudev-3.2.8/src/shared -I../.. -DUDEV_ROOT_RUN=\"/run\"
-include ../../config.h -O2 -pipe -g -feliminate-unused-debug-types 
-fmacro-prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-

poky-linux/eudev/3.2.8-r0=/usr/src/debug/eudev/3.2.8-r0 -fdebug- prefix-map=/media/build1/poky/build/tmp/work/ppce300c3-poky- linux/eudev/3.2.8-r0=/usr/src/debug/eudev/3.2.8-r0 -fdebug-prefix- map=/media/build1/poky/build/tmp/work/ppce300c3-poky- linux/eudev/3.2.8-r0/recipe-sysroot= -fdebug-prefix- map=/media/build1/poky/build/tmp/work/ppce300c3-poky- linux/eudev/3.2.8-r0/recipe-sysroot-native= -c ../../../eudev- 3.2.8/src/shared/log.c -fPIC -DPIC -o .libs/log.o ../../../eudev-3.2.8/src/shared/log.c: In function 'create_log_socket':
../../../eudev-3.2.8/src/shared/log.c:128:43: error: 'SO_SNDTIMEO' undeclared (first use in this function); did you mean 'SO_TXTIME'?
128 | (void) setsockopt(fd, SOL_SOCKET, SO_SNDTIMEO, &tv,
sizeof(tv));

      |                                           ^~~~~~~~~~~
      |                                           SO_TXTIME

The file:
ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot/usr/include/asm- generic/socket.h
isn't included.

if I put:

#include <asm-generic/socket.h>

at the top of log.c it will build, everything else doesn't.

Debugging with gcc -e shows its including a different 'interesting' file.

Quoted 6 lines

My build has a build/tmp/work/ppce300c3-poky-linux/eudev/3.2.8-r0/recipe-sysroot- native/usr/lib/powerpc-poky-linux/gcc/powerpc-poky- linux/9.2.0/include-fixed/asm-generic/socket.h
which looks totally wrong when I compare it to the real asm- generic/socket.h.

This is similar to what I was seeing on some early qemuppc builds as well. fixincludes was tossing out the original file and putting in a broken variant. I had to hide the "fixed" files to build. But then it stopped happening, so I moved on.

Quoted 5 lines

I'm not familiar with how/when fixincludes fires, so I have no idea about any possible races, etc, that could be happening.

I'll do some more research down that route to see if anything pops up.

For the achieves, I've posted a patch which should fix this. Its due to headers leaking into includes-fixed in gcc which has its dependency on linux-libc-headers marked as "safe" for various reasons.

We don't need gcc to do this on linux so we can remove them. It explains Bruce's previous fun here too.

We'll try a new build and see how things look with that fix.

Cheers,

Richard