Files
poky/meta/recipes-kernel/linux/linux-yocto-tiny_5.2.bb
Bruce Ashfield cdb9ea2a8b linux-yocto/5.2: fix strace/ptrace long runtime issues
Bumping SRCREVs to pickup the following kernel commit:

[
    Author: Bruce Ashfield <bruce.ashfield@gmail.com>
    Date:   Tue Oct 8 13:15:46 2019 +0000

        signal/ptrace: fix cgroup2/freezer long runtimes

        As reported in the thread: https://lkml.org/lkml/2019/10/1/789, in
        kernels with commit 76f969e8948d82 [cgroup: cgroup v2 freezer], we
        were seeing much longer runtime in strace/ptrace tests (4 minutes
        versus 4 seconds).

        The issue only manifests if CONFIG_PREEMPT is enabled, which is in
        all of the default configurations.

        As sugggested in the thread, the movement of preempt_enable_no_resched()
        until after the cgroup is frozen returns the behaviour to pre-5.2
        runtimes.

        Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
]

With this change in place, our times are back to normal:

   root@qemux86-64:~# cd /usr/lib/strace/ptest/tests
   root@qemux86-64:/usr/lib/strace/ptest/tests# time ../strace -o log -qq -esignal=none -e/clock ./printpath-umovestr>ttt

   real    0m3.909s
   user    0m0.534s
   sys     0m3.342s

This will eventually loop around via -stable, or may need future
tweaks, but it does address the immediate issue/symptom that we are
seeing, with no obvious side effects.

[YOCTO #13556]

(From OE-Core rev: 55a54aed27ffa94a235da526a39aeea59caa3417)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2019-10-09 14:07:43 +01:00

33 lines
1.0 KiB
BlitzBasic

KBRANCH ?= "v5.2/standard/tiny/base"
KBRANCH_qemuarm ?= "v5.2/standard/tiny/arm-versatile-926ejs"
LINUX_KERNEL_TYPE = "tiny"
KCONFIG_MODE = "--allnoconfig"
require recipes-kernel/linux/linux-yocto.inc
LINUX_VERSION ?= "5.2.17"
LIC_FILES_CHKSUM = "file://COPYING;md5=bbea815ee2795b2f4230826c0c6b8814"
DEPENDS += "${@bb.utils.contains('ARCH', 'x86', 'elfutils-native', '', d)}"
DEPENDS += "openssl-native util-linux-native"
KMETA = "kernel-meta"
KCONF_BSP_AUDIT_LEVEL = "2"
SRCREV_machine_qemuarm ?= "aaa66d462ec17345dadd69b1ec0f3fcc83e82536"
SRCREV_machine ?= "255a750d28cd45df8923c3aba1e82c322757a50d"
SRCREV_meta ?= "b867b78b5019ae455af97dec7794cff7527d7624"
PV = "${LINUX_VERSION}+git${SRCPV}"
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.2;destsuffix=${KMETA}"
COMPATIBLE_MACHINE = "qemux86|qemux86-64|qemuarm|qemuarmv5"
# Functionality flags
KERNEL_FEATURES = ""
KERNEL_DEVICETREE_qemuarmv5 = "versatile-pb.dtb"