mirror of
https://git.yoctoproject.org/poky
synced 2026-03-19 05:39:39 +01:00
perf's builtin-sched.c triggers extremly long build times on some
architectures due to gcc 4.7+ var-tracking functionality.
To fix this, we can cherry pick the 3.12 commit:
f36f83f94 [perf sched: Move struct perf_sched definition out of cmd_sched()]
With this change build times are reduced from 15 to 20 minutes for qemuarm to:
real 2m19.940s
user 1m35.438s
sys 0m11.165s
For kernel's that are not carrying this patch, the following can be added
to the perf recipe to also fix the issue:
+++ b/meta/recipes-kernel/perf/perf.bb
@@ -68,6 +68,7 @@ EXTRA_OEMAKE = \
CC="${CC}" \
AR="${AR}" \
perfexecdir=${libexecdir} \
+ EXTRA_CFLAGS="-fno-var-tracking" \
NO_GTK2=1 ${TUI_DEFINES} NO_DWARF=1 ${SCRIPTING_DEFINES} \
(From OE-Core rev: 82ad5305381c2f541ef051a8fc28243cd91776fe)
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
28 lines
1006 B
BlitzBasic
28 lines
1006 B
BlitzBasic
require recipes-kernel/linux/linux-yocto.inc
|
|
|
|
KBRANCH = "standard/preempt-rt/base"
|
|
KBRANCH_qemuppc = "standard/preempt-rt/qemuppc"
|
|
|
|
SRCREV_machine ?= "f1e003e9441f0366d7b9a2209ef3108438745ea3"
|
|
SRCREV_machine_qemuppc ?= "12be459359d5b20dbf856aa3649304c6f618d420"
|
|
SRCREV_meta ?= "4f689aa30a2c9cf5dceb2fa3696d2cb208ee9173"
|
|
|
|
SRC_URI = "git://git.yoctoproject.org/linux-yocto-3.10.git;bareclone=1;branch=${KBRANCH},meta;name=machine,meta"
|
|
|
|
LINUX_VERSION ?= "3.10.11"
|
|
|
|
PV = "${LINUX_VERSION}+git${SRCPV}"
|
|
|
|
KMETA = "meta"
|
|
|
|
LINUX_KERNEL_TYPE = "preempt-rt"
|
|
|
|
COMPATIBLE_MACHINE = "(qemux86|qemux86-64|qemuarm|qemuppc|qemumips)"
|
|
|
|
# Functionality flags
|
|
KERNEL_EXTRA_FEATURES ?= "features/netfilter/netfilter.scc features/taskstats/taskstats.scc"
|
|
KERNEL_FEATURES_append = " ${KERNEL_EXTRA_FEATURES}"
|
|
KERNEL_FEATURES_append_qemux86=" cfg/sound.scc cfg/paravirt_kvm.scc"
|
|
KERNEL_FEATURES_append_qemux86-64=" cfg/sound.scc"
|
|
KERNEL_FEATURES_append = " ${@bb.utils.contains("TUNE_FEATURES", "mx32", " cfg/x32.scc", "" ,d)}"
|