diff options
author | Adrian Calianu <adrian.calianu@enea.com> | 2017-09-27 10:37:36 +0200 |
---|---|---|
committer | Adrian Calianu <adrian.calianu@enea.com> | 2017-09-27 10:37:36 +0200 |
commit | ad4d4e5cbad3ad875eaa59e0a919c014dfb6a39e (patch) | |
tree | 9f4ec55e714e2be67dab4b775775b704af454f74 /patches/boot_time_opt_guest/0102-cpuidle-skip-synchronize_rcu-on-single-CPU-systems.patch | |
parent | 7579efbdb49529f36652b69d4630c6c43907f77b (diff) | |
download | enea-kernel-cache-ad4d4e5cbad3ad875eaa59e0a919c014dfb6a39e.tar.gz |
add guest features from yocto branch
Signed-off-by: Adrian Calianu <adrian.calianu@enea.com>
Diffstat (limited to 'patches/boot_time_opt_guest/0102-cpuidle-skip-synchronize_rcu-on-single-CPU-systems.patch')
-rw-r--r-- | patches/boot_time_opt_guest/0102-cpuidle-skip-synchronize_rcu-on-single-CPU-systems.patch | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/patches/boot_time_opt_guest/0102-cpuidle-skip-synchronize_rcu-on-single-CPU-systems.patch b/patches/boot_time_opt_guest/0102-cpuidle-skip-synchronize_rcu-on-single-CPU-systems.patch new file mode 100644 index 0000000..1de2a6b --- /dev/null +++ b/patches/boot_time_opt_guest/0102-cpuidle-skip-synchronize_rcu-on-single-CPU-systems.patch | |||
@@ -0,0 +1,34 @@ | |||
1 | From 6b0fb5b2a7a157c04d8ab6ad71b092034d0048bf Mon Sep 17 00:00:00 2001 | ||
2 | From: Arjan van de Ven <arjan@linux.intel.com> | ||
3 | Date: Wed, 11 Feb 2015 16:19:26 -0600 | ||
4 | Subject: [PATCH 102/114] cpuidle: skip synchronize_rcu() on single CPU systems | ||
5 | |||
6 | synchronize_rcu() is pretty expensive, and on single CPU systems we don't need | ||
7 | it in this specific case, so skip it. | ||
8 | |||
9 | Signed-off-by: Arjan van de Ven <arjan@linux.intel.com> | ||
10 | Signed-off-by: Miguel Bernal Marin <miguel.bernal.marin@linux.intel.com> | ||
11 | --- | ||
12 | drivers/cpuidle/cpuidle.c | 5 ++++- | ||
13 | 1 file changed, 4 insertions(+), 1 deletion(-) | ||
14 | |||
15 | diff --git a/drivers/cpuidle/cpuidle.c b/drivers/cpuidle/cpuidle.c | ||
16 | index 62810ff3b00f..f1d110411098 100644 | ||
17 | --- a/drivers/cpuidle/cpuidle.c | ||
18 | +++ b/drivers/cpuidle/cpuidle.c | ||
19 | @@ -324,8 +324,11 @@ void cpuidle_uninstall_idle_handler(void) | ||
20 | /* | ||
21 | * Make sure external observers (such as the scheduler) | ||
22 | * are done looking at pointed idle states. | ||
23 | + * This is only relevant if there is more than one cpu, | ||
24 | + * if there is only one CPU, that is us... and we're | ||
25 | + * coherent to ourselves. | ||
26 | */ | ||
27 | - synchronize_rcu(); | ||
28 | + | ||
29 | } | ||
30 | |||
31 | /** | ||
32 | -- | ||
33 | 2.11.1 | ||
34 | |||