diff options
author | Mark Brown <broonie@linaro.org> | 2013-10-11 19:26:58 +0100 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2013-10-11 19:26:58 +0100 |
commit | 6ea1971e5ce9bb8f07b3dc70e10be749526b802e (patch) | |
tree | cc3cfafe2802a84068634df6d2206170def31ae5 /arch | |
parent | 626c75a01521adc3a71b43d49d4db3d956c41b9f (diff) | |
parent | fa4b900fcaa6092a43fd60fe7dd72f8df654bcde (diff) |
Merge branch 'linux-linaro-lsk' into linux-linaro-lsk-android
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/Kconfig | 12 | ||||
-rw-r--r-- | arch/arm/kernel/smp.c | 5 |
2 files changed, 17 insertions, 0 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 8b0bc721755..02b9bf9268d 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -1578,6 +1578,18 @@ config HMP_FREQUENCY_INVARIANT_SCALE migration strategy to interact more predictably with CPUFreq's asynchronous compute capacity changes. +config SCHED_HMP_LITTLE_PACKING + bool "Small task packing for HMP" + depends on SCHED_HMP + default n + help + Allows the HMP Scheduler to pack small tasks into CPUs in the + smallest HMP domain. + Controlled by two sysfs files in sys/kernel/hmp. + packing_enable: 1 to enable, 0 to disable packing. Default 1. + packing_limit: runqueue load ratio where a RQ is considered + to be full. Default is NICE_0_LOAD * 9/8. + config HAVE_ARM_SCU bool help diff --git a/arch/arm/kernel/smp.c b/arch/arm/kernel/smp.c index a666911fbe2..ed3243bb6c0 100644 --- a/arch/arm/kernel/smp.c +++ b/arch/arm/kernel/smp.c @@ -46,6 +46,9 @@ #include <asm/virt.h> #include <asm/mach/arch.h> +#define CREATE_TRACE_POINTS +#include <trace/events/arm-ipi.h> + /* * as from 2.5, kernels no longer have an init_tasks structure * so we need some other way of telling a new secondary core @@ -673,6 +676,7 @@ void handle_IPI(int ipinr, struct pt_regs *regs) if (ipinr < NR_IPI) __inc_irq_stat(cpu, ipi_irqs[ipinr]); + trace_arm_ipi_entry(ipinr); switch (ipinr) { case IPI_WAKEUP: break; @@ -722,6 +726,7 @@ void handle_IPI(int ipinr, struct pt_regs *regs) cpu, ipinr); break; } + trace_arm_ipi_exit(ipinr); set_irq_regs(old_regs); } |