kernel: consolidated pull request (linux-yocto-4.1 and perf)
cover kernel: consolidated pull request (linux-yocto-4.1 and perf)
Hi all,
In this series I have two sets of backports, and one configuration change to linux-yocto.
The config change addresses YOCTO 9269, and is as follows:
[PATCH 1/5] linux-yocto: ktypes/standard: Add tmpfs-posix-acl feature]
This enables the CONFIG_TMPFS_POSIX_ACL, which is wanted by things like systemd. We also explicitly enable the features's dependencies and options selected by the feature for clarity.
The backports are mainline cherry-picks, and have built safely on a number of boards ofr me.
[PATCH 2/5] linux-yocto/4.1: device property : Backport device property patches [PATCH 3/5] linux-yocto/4.1: MFD backports
The two perf fixes are addressing some issues with the python scripts that perf ships. They were either runtime broken (missing modules), or were generating QA warnings. These address [YOCTO #8991] and [YOCTO #9069].
I've executed the python scripts on target, and everything looks sane!
Cheers,
Bruce
The following changes since commit 2f2f784727a1617c2b9ce0bb86730ba301238e06:
parselogs: add new whitelist entries to address 4.4.3 issues (2016-03-22 08:54:34 +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 (5):
linux-yocto: ktypes/standard: Add tmpfs-posix-acl feature linux-yocto/4.1: device property : Backport device property patches linux-yocto/4.1: MFD backports
perf: fix python scripts QA errors
perf: package python modules into perf-python
meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-tiny_4.1.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-tiny_4.4.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_4.1.bb | 16 ++++++++-------- meta/recipes-kernel/linux/linux-yocto_4.4.bb | 2 +- meta/recipes-kernel/perf/perf.bb | 10 ++++++++-- 7 files changed, 21 insertions(+), 15 deletions(-)
Signature · 1 line
2.5.0
PATCH 1/5 linux-yocto: ktypes/standard: Add tmpfs-posix-acl feature
This enables the CONFIG_TMPFS_POSIX_ACL, which is wanted by things like systemd. We also explicitly enable the features's dependencies and options selected by the feature for clarity.
[YOCTO #9269]
--- meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-tiny_4.4.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_4.4.bb | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_4.4.bb +1 -1
@@ -3,7 +3,7 @@ KBRANCH ?= "standard/preempt-rt" require recipes-kernel/linux/linux-yocto.inc SRCREV_machine ?= "dfa88200087a7ef73741383c05c14ff2f3978947" -SRCREV_meta ?= "ce5b35bc76bb65d93d0897535c088f51dae4048b" +SRCREV_meta ?= "32e84686fc87413612e108cc4ab0e7a0d21cb4fd" 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 +1 -1
@@ -10,7 +10,7 @@ KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" SRCREV_machine ?= "3d2455f9da30f923c6bd69014fad4cc4ea738be6" -SRCREV_meta ?= "ce5b35bc76bb65d93d0897535c088f51dae4048b" +SRCREV_meta ?= "32e84686fc87413612e108cc4ab0e7a0d21cb4fd" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_4.4.bb +1 -1
@@ -19,7 +19,7 @@ SRCREV_machine_qemux86 ?= "3d2455f9da30f923c6bd69014fad4cc4ea738be6" SRCREV_machine_qemux86-64 ?= "3d2455f9da30f923c6bd69014fad4cc4ea738be6" SRCREV_machine_qemumips64 ?= "8b25338045fdb88a9cdff808003102643f03083e" SRCREV_machine ?= "3d2455f9da30f923c6bd69014fad4cc4ea738be6" -SRCREV_meta ?= "ce5b35bc76bb65d93d0897535c088f51dae4048b" +SRCREV_meta ?= "32e84686fc87413612e108cc4ab0e7a0d21cb4fd" 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
PATCH 2/5 linux-yocto/4.1: device property : Backport device property patches
In reply to Bruce AshfieldIntegrating the following mainline commits for Apollo Lake/Broxton support:
568c4910b938 device property: always check for fwnode type
bd2ac1821e91 device property: fallback to pset when gettng one string 44a76bd61eed ACPI / property: Extend fwnode_property_* to data-only subnodes 76f301877fab ACPI / property: Add support for data-only subnodes 95010db1e8f9 ACPI / property: Add routine for extraction of _DSD properties 3d257abeae4d device property: Return -ENXIO if there is no suitable FW interface 15f7db3cd1d0 device property: attach 'else if' to the proper 'if' effb3f07966e ACPI / OF: Rename of_node() and acpi_node() to to_of_node() and to_acpi_node() 30aa0ae9ebf0 ACPI / scan: Parse _CCA and setup device coherency
c8b4218d1523 ACPI / property: Define a symbol for PRP0001
3d20c5d27e99 ACPI / property: Refine consistency check for PRP0001 f753cbe35057 device property: avoid allocations of 0 length
6985a3d56431 device property: the secondary fwnode needs to depend on the primary 6c23f8de37ff device property: add spaces to PROPERTY_ENTRY_STRING macro 216b251c170c include/linux/property.h: fix build issues with gcc-4.4.4 c579da0b4812 device property: Take a copy of the property set
e0c7ce6ec1eb device property: Fallback to secondary fwnode if primary misses the property a657577af2af device property: improve readability of macros
599f18f62daf device property: Add fwnode_property_match_string() 03599b274370 device property: helper macros for property entry creation 5247e6af02d6 device property: keep single value inplace
c12af01cf0d4 device property: refactor built-in properties support 1390c21efa11 device property: rename helper functions
--- meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-tiny_4.1.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_4.1.bb | 16 ++++++++-------- 3 files changed, 10 insertions(+), 10 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb +1 -1
@@ -2,7 +2,7 @@ KBRANCH ?= "standard/preempt-rt/base" require recipes-kernel/linux/linux-yocto.inc -SRCREV_machine ?= "5984d68470257f07d515b94570cd4fbdc5439380" +SRCREV_machine ?= "147f03e2a95452d67185375e1f037696cb9b8f10" SRCREV_meta ?= "b9023d4c8fbbb854c26f158a079a5f54dd61964d" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.1.git;branch=${KBRANCH};name=machine \
meta/recipes-kernel/linux/linux-yocto-tiny_4.1.bb +1 -1
@@ -9,7 +9,7 @@ LINUX_VERSION ?= "4.1.18" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine ?= "304caa9480f19875e717faf3cad8cb7ecd758733" +SRCREV_machine ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" SRCREV_meta ?= "b9023d4c8fbbb854c26f158a079a5f54dd61964d" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_4.1.bb +8 -8
@@ -11,14 +11,14 @@ KBRANCH_qemux86 ?= "standard/base" KBRANCH_qemux86-64 ?= "standard/base" KBRANCH_qemumips64 ?= "standard/mti-malta64" -SRCREV_machine_qemuarm ?= "694cc606807a8e5cce762027f51b4179520c9238" -SRCREV_machine_qemuarm64 ?= "304caa9480f19875e717faf3cad8cb7ecd758733" -SRCREV_machine_qemumips ?= "9150f6c42a7f3d61c150dd0cc2f2de8749dceac9" -SRCREV_machine_qemuppc ?= "304caa9480f19875e717faf3cad8cb7ecd758733" -SRCREV_machine_qemux86 ?= "304caa9480f19875e717faf3cad8cb7ecd758733" -SRCREV_machine_qemux86-64 ?= "304caa9480f19875e717faf3cad8cb7ecd758733" -SRCREV_machine_qemumips64 ?= "e068452acbc753215c7e26d4e81cdf437b53b988" -SRCREV_machine ?= "304caa9480f19875e717faf3cad8cb7ecd758733" +SRCREV_machine_qemuarm ?= "608b0ecfc5c2ab27bfa6622eefa3c0948c3a2f44" +SRCREV_machine_qemuarm64 ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" +SRCREV_machine_qemumips ?= "aced73e93690206a16e77b9b5dbb633690a8ea98" +SRCREV_machine_qemuppc ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" +SRCREV_machine_qemux86 ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" +SRCREV_machine_qemux86-64 ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" +SRCREV_machine_qemumips64 ?= "83e5af8217dc0a4e867b8a0d1d85aaf393ecb9c7" +SRCREV_machine ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" SRCREV_meta ?= "b9023d4c8fbbb854c26f158a079a5f54dd61964d" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.1.git;name=machine;branch=${KBRANCH}; \
Signature · 1 line
2.5.0
PATCH 3/5 linux-yocto/4.1: MFD backports
In reply to Bruce AshfieldIntegrating the following series of MFD backports:
e9b00f938e99 driver core: platform: Add support for built-in device properties a63ef2c57b90 mfd: core: propagate device properties to sub devices drivers a7e1dabefaf8 klist: implement klist_prev()
2da2857b20b9 PM / QoS: Make it possible to expose device latency tolerance to userspace 36b2a287373a driver core: implement device_for_each_child_reverse() a6c7cb3da8e7 mfd: intel-lpss: Pass HSUART configuration via properties 1f0da901349b mfd: intel-lpss: Pass SDA hold time to I2C host controller driver 391ec7713003 mfd: intel-lpss: Add support for passing device properties fe9fb6da9164 mfd: lpss: Add Broxton ACPI IDs
702a4f1f13fd mfd: lpss: Add Intel Broxton PCI IDs
982bcf977be4 mfd: intel-lpss: Use writeq() helper
d35dbf0dbaa7 mfd: Add support for Intel Sunrisepoint LPSS devices
--- meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb | 2 +- meta/recipes-kernel/linux/linux-yocto-tiny_4.1.bb | 2 +- meta/recipes-kernel/linux/linux-yocto_4.1.bb | 16 ++++++++-------- 3 files changed, 10 insertions(+), 10 deletions(-)
meta/recipes-kernel/linux/linux-yocto-rt_4.1.bb +1 -1
@@ -2,7 +2,7 @@ KBRANCH ?= "standard/preempt-rt/base" require recipes-kernel/linux/linux-yocto.inc -SRCREV_machine ?= "147f03e2a95452d67185375e1f037696cb9b8f10" +SRCREV_machine ?= "8a1c72b29b63604b45ef13aed04f7bfe6d4fc277" SRCREV_meta ?= "b9023d4c8fbbb854c26f158a079a5f54dd61964d" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.1.git;branch=${KBRANCH};name=machine \
meta/recipes-kernel/linux/linux-yocto-tiny_4.1.bb +1 -1
@@ -9,7 +9,7 @@ LINUX_VERSION ?= "4.1.18" KMETA = "kernel-meta" KCONF_BSP_AUDIT_LEVEL = "2" -SRCREV_machine ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" +SRCREV_machine ?= "e9b00f938e9971cf84dd33f317719c91135246e9" SRCREV_meta ?= "b9023d4c8fbbb854c26f158a079a5f54dd61964d" PV = "${LINUX_VERSION}+git${SRCPV}"
meta/recipes-kernel/linux/linux-yocto_4.1.bb +8 -8
@@ -11,14 +11,14 @@ KBRANCH_qemux86 ?= "standard/base" KBRANCH_qemux86-64 ?= "standard/base" KBRANCH_qemumips64 ?= "standard/mti-malta64" -SRCREV_machine_qemuarm ?= "608b0ecfc5c2ab27bfa6622eefa3c0948c3a2f44" -SRCREV_machine_qemuarm64 ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" -SRCREV_machine_qemumips ?= "aced73e93690206a16e77b9b5dbb633690a8ea98" -SRCREV_machine_qemuppc ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" -SRCREV_machine_qemux86 ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" -SRCREV_machine_qemux86-64 ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" -SRCREV_machine_qemumips64 ?= "83e5af8217dc0a4e867b8a0d1d85aaf393ecb9c7" -SRCREV_machine ?= "f753cbe35057d5df18bcf1adafd74e64dbbdff6b" +SRCREV_machine_qemuarm ?= "e6b84f3f0c7292a7d3453e6bebd9987e08678a4b" +SRCREV_machine_qemuarm64 ?= "e9b00f938e9971cf84dd33f317719c91135246e9" +SRCREV_machine_qemumips ?= "c70a6ad907f0f9ffd4d911b6413e509766fba07b" +SRCREV_machine_qemuppc ?= "e9b00f938e9971cf84dd33f317719c91135246e9" +SRCREV_machine_qemux86 ?= "e9b00f938e9971cf84dd33f317719c91135246e9" +SRCREV_machine_qemux86-64 ?= "e9b00f938e9971cf84dd33f317719c91135246e9" +SRCREV_machine_qemumips64 ?= "a023db1f6f40280d3e254aed327f61f6d138992e" +SRCREV_machine ?= "e9b00f938e9971cf84dd33f317719c91135246e9" SRCREV_meta ?= "b9023d4c8fbbb854c26f158a079a5f54dd61964d" SRC_URI = "git://git.yoctoproject.org/linux-yocto-4.1.git;name=machine;branch=${KBRANCH}; \
Signature · 1 line
2.5.0
PATCH 4/5 perf: fix python scripts QA errors
In reply to Bruce AshfieldTwo QA warnings were being generated from perf, due to the location of python scripts changing in the kernel build:
WARNING: perf-1.0-r9 do_package_qa: QA Issue:
/usr/libexec/perf-core/scripts/python/call-graph-from-postgresql.py contained
in package perf-python requires /usr/bin/python2, but no providers found in RDEPENDS_perf-python? [file-rdeps]
WARNING: QA Issue: /usr/libexec/perf-core/tests/attr.py_perf contained in package
perf requires /usr/bin/python, but no providers found in its RDEPENDS [file-rdeps]
By adding libexec dir to both the tests and scripts packaging, we get the appropriate RDEPENDS on the packages that actually contain the python scripts (without making perf-core depend on python).
We also tweak any python scripts to use '/usr/bin/env python', rather than a version specific python, since it won't be provided and generate a QA error.
[YOCTO #8991]
--- meta/recipes-kernel/perf/perf.bb | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-)
meta/recipes-kernel/perf/perf.bb +7 -1
@@ -183,6 +183,11 @@ do_configure_prepend () { sed -i 's,#include "tests/tests.h",#include "tests/tests.h"\n#include "util/debug.h",' ${S}/tools/perf/arch/arm/tests/dwarf-unwind.c sed -i 's,#include "perf_regs.h",#include "perf_regs.h"\n#include "util/debug.h",' ${S}/tools/perf/arch/arm/util/unwind-libunwind.c fi + + # use /usr/bin/env instead of version specific python + for s in `find ${S}/tools/perf/scripts/python/ -name '*.py'`; do + sed -i 's,/usr/bin/python2,/usr/bin/env python,' "${s}" + done } python do_package_prepend() {
@@ -205,8 +210,9 @@ RSUGGESTS_${PN} += "${PN}-archive ${PN}-tests ${RSUGGESTS_SCRIPTING}" FILES_${PN} += "${libexecdir}/perf-core ${exec_prefix}/libexec/perf-core ${libdir}/traceevent" FILES_${PN}-archive = "${libdir}/perf/perf-core/perf-archive" -FILES_${PN}-tests = "${libdir}/perf/perf-core/tests" +FILES_${PN}-tests = "${libdir}/perf/perf-core/tests ${libexecdir}/perf-core/tests" FILES_${PN}-python = "${libdir}/python*/site-packages ${libdir}/perf/perf-core/scripts/python" +FILES_${PN}-python += "${libexecdir}/perf-core/scripts/python/*" FILES_${PN}-perl = "${libdir}/perf/perf-core/scripts/perl"
Signature · 1 line
2.5.0
PATCH 5/5 perf: package python modules into perf-python
In reply to Bruce AshfieldThe scripts that are part of perf require python and supporting modules. The existing perf-pyton dependency only brought in core python, which left us unable to actually execute the scripts on target.
With this additional runtime dependency, we can now execte the sample analysis scripts when perf-scripting is availble.
This is a partial fix for [YOCTO #9069], since there are still scripts looking for non-existent modules, and those will be dealt with in future releases.
--- meta/recipes-kernel/perf/perf.bb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
meta/recipes-kernel/perf/perf.bb +1 -1
@@ -201,7 +201,7 @@ PACKAGES =+ "${PN}-archive ${PN}-tests ${PN}-perl ${PN}-python" RDEPENDS_${PN} += "elfutils bash" RDEPENDS_${PN}-archive =+ "bash" -RDEPENDS_${PN}-python =+ "bash python" +RDEPENDS_${PN}-python =+ "bash python python-modules" RDEPENDS_${PN}-perl =+ "bash perl perl-modules" RDEPENDS_${PN}-tests =+ "python"
Signature · 1 line
2.5.0