diff options
author | Joel Stanley <joel@jms.id.au> | 2014-08-13 18:09:44 +1000 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2014-08-13 18:23:07 +1000 |
commit | bb8be0ec098a57796776b8a1d1fb49a220a539d8 (patch) | |
tree | 2fcfa1d238cfb11e2ec19db252938934c81bcf62 /include | |
parent | 52a920308d1850a85023e3b61678cf68c73593cc (diff) | |
download | skiboot-bb8be0ec098a57796776b8a1d1fb49a220a539d8.zip skiboot-bb8be0ec098a57796776b8a1d1fb49a220a539d8.tar.gz skiboot-bb8be0ec098a57796776b8a1d1fb49a220a539d8.tar.bz2 |
Add cpu_relax to stop cores spinning hard
Ensure a thread is not stopping its siblings from making forward
progress when we are busy-waiting on older DD1.x CPU revisions where
SMT priorities are somewhat broken.
Signed-off-by: Joel Stanley <joel@jms.id.au>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/cpu.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/include/cpu.h b/include/cpu.h index d7f6aae..1f92b9c 100644 --- a/include/cpu.h +++ b/include/cpu.h @@ -78,6 +78,8 @@ extern unsigned int cpu_thread_count; /* Boot CPU. */ extern struct cpu_thread *boot_cpu; +extern void cpu_relax(void); + /* Initialize CPUs */ void pre_init_boot_cpu(void); void init_boot_cpu(void); |