Patches contributed by Eötvös Lorand University
commit 0bf377bbb0bea6130f35613491887cc622e42a8b
Author: Ingo Molnar <mingo@elte.hu>
Date: Sun Sep 12 08:14:52 2010 +0200
sched: Improve latencies under load by decreasing minimum scheduling granularity
Mathieu reported bad latencies with make -j10 kind of kbuild
workloads - which is mostly caused by us scheduling with a
too coarse granularity.
Reduce the minimum granularity some more, to make sure we
can meet the latency target.
I got the following results (make -j10 kbuild load, average of 3
runs):
vanilla:
maximum latency: 38278.9 µs
average latency: 7730.1 µs
patched:
maximum latency: 22702.1 µs
average latency: 6684.8 µs
Mathieu also measured it:
|
| * wakeup-latency.c (SIGEV_THREAD) with make -j10
|
| - Mainline 2.6.35.2 kernel
|
| maximum latency: 45762.1 µs
| average latency: 7348.6 µs
|
| - With only Peter's smaller min_gran (shown below):
|
| maximum latency: 29100.6 µs
| average latency: 6684.1 µs
|
Reported-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Reported-by: Linus Torvalds <torvalds@linux-foundation.org>
Acked-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Suggested-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
LKML-Reference: <AANLkTi=8m4g01wZPacySoF7U0PevTNVgJoZZrHiUD-pN@mail.gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --git a/kernel/sched_fair.c b/kernel/sched_fair.c
index 9b5b4f86b742..a171138a9402 100644
--- a/kernel/sched_fair.c
+++ b/kernel/sched_fair.c
@@ -54,13 +54,13 @@ enum sched_tunable_scaling sysctl_sched_tunable_scaling
* Minimal preemption granularity for CPU-bound tasks:
* (default: 2 msec * (1 + ilog(ncpus)), units: nanoseconds)
*/
-unsigned int sysctl_sched_min_granularity = 2000000ULL;
-unsigned int normalized_sysctl_sched_min_granularity = 2000000ULL;
+unsigned int sysctl_sched_min_granularity = 750000ULL;
+unsigned int normalized_sysctl_sched_min_granularity = 750000ULL;
/*
* is kept at sysctl_sched_latency / sysctl_sched_min_granularity
*/
-static unsigned int sched_nr_latency = 3;
+static unsigned int sched_nr_latency = 8;
/*
* After fork, child runs first. If set to 0 (default) then
commit 9efdda310cb26bdc28429cb831c3ec5fa270feb7
Merge: e1d4e08d1fa3 df09162550fb
Author: Ingo Molnar <mingo@elte.hu>
Date: Fri Sep 10 08:05:34 2010 +0200
Merge branch 'tip/perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-2.6-trace into perf/urgent
commit e1d4e08d1fa302f877d9a26d8ce056734b46ca14
Merge: 5e11637e2c92 85e00b55517a
Author: Ingo Molnar <mingo@elte.hu>
Date: Fri Sep 10 07:34:14 2010 +0200
Merge branch 'perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux-2.6 into perf/urgent
commit 2aa61274efb9f532deaebc9812675a27af1994cb
Merge: 359d5106a2ff 5e11637e2c92
Author: Ingo Molnar <mingo@elte.hu>
Date: Thu Sep 9 20:40:06 2010 +0200
Merge branch 'perf/urgent' into perf/core
Merge reason: Pick up pending fixes before applying dependent new changes.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
commit b4c69d45c4c0d7480e9df183ebda62148984af25
Merge: 68d3f1d81050 269f45c25028
Author: Ingo Molnar <mingo@elte.hu>
Date: Wed Sep 1 22:31:07 2010 +0200
Merge branch 'urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rric/oprofile into perf/urgent
commit daab7fc734a53fdeaf844b7c03053118ad1769da
Merge: 774ea0bcb27f 2bfc96a127bc
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Aug 31 09:45:21 2010 +0200
Merge commit 'v2.6.36-rc3' into x86/memblock
Conflicts:
arch/x86/kernel/trampoline.c
mm/memblock.c
Merge reason: Resolve the conflicts, update to latest upstream.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
diff --cc arch/x86/kernel/trampoline.c
index 7c2102c2aadf,a874495b3673..9a3d44c0df9a
--- a/arch/x86/kernel/trampoline.c
+++ b/arch/x86/kernel/trampoline.c
@@@ -1,7 -1,8 +1,8 @@@
#include <linux/io.h>
+#include <linux/memblock.h>
#include <asm/trampoline.h>
+ #include <asm/pgtable.h>
-#include <asm/e820.h>
#if defined(CONFIG_X86_64) && defined(CONFIG_ACPI_SLEEP)
#define __trampinit
diff --cc arch/x86/xen/mmu.c
index b511f1986911,42086ac406af..4fe04ac0bae0
--- a/arch/x86/xen/mmu.c
+++ b/arch/x86/xen/mmu.c
@@@ -42,9 -42,9 +42,10 @@@
#include <linux/highmem.h>
#include <linux/debugfs.h>
#include <linux/bug.h>
+ #include <linux/vmalloc.h>
#include <linux/module.h>
#include <linux/gfp.h>
+#include <linux/memblock.h>
#include <asm/pgtable.h>
#include <asm/tlbflush.h>
commit 3449dafaf514f83de8d9a41f2c437a8803eea24d
Merge: f2481f3df452 98ee74a75ca0
Author: Ingo Molnar <mingo@elte.hu>
Date: Mon Aug 30 08:55:38 2010 +0200
Merge branch 'perf/core' of git://git.kernel.org/pub/scm/linux/kernel/git/frederic/random-tracing into perf/core
commit 7de5d895b2020260190db0021de646f3f22f755e
Merge: 04fba67163a9 502adf5778f4
Author: Ingo Molnar <mingo@elte.hu>
Date: Wed Aug 25 13:09:58 2010 +0200
Merge branch 'linus' into perf/core
Merge reason: pick up perf fixes
Signed-off-by: Ingo Molnar <mingo@elte.hu>
commit 577ba406e1cceac4776b095c83ee2896074a0327
Author: Ingo Molnar <mingo@elte.hu>
Date: Tue Aug 24 10:41:33 2010 +0200
V4L/DVB: mantis: Fix IR_CORE dependency
This build bug triggers:
drivers/built-in.o: In function `mantis_exit':
(.text+0x377413): undefined reference to `ir_input_unregister'
drivers/built-in.o: In function `mantis_input_init':
(.text+0x3774ff): undefined reference to `__ir_input_register'
If MANTIS_CORE is enabled but IR_CORE is not. Add the correct
dependency.
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Acked-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
diff --git a/drivers/media/dvb/mantis/Kconfig b/drivers/media/dvb/mantis/Kconfig
index decdeda840d0..fd0830ed10d8 100644
--- a/drivers/media/dvb/mantis/Kconfig
+++ b/drivers/media/dvb/mantis/Kconfig
@@ -1,6 +1,6 @@
config MANTIS_CORE
tristate "Mantis/Hopper PCI bridge based devices"
- depends on PCI && I2C && INPUT
+ depends on PCI && I2C && INPUT && IR_CORE
help
Support for PCI cards based on the Mantis and Hopper PCi bridge.
commit a6b9b4d50f492630443b38404d1f436b3b748c14
Merge: e36c886a0f9d 28457ee69c47
Author: Ingo Molnar <mingo@elte.hu>
Date: Mon Aug 23 11:32:34 2010 +0200
Merge branch 'rcu/next' of git://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-2.6-rcu into core/rcu