diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2023-02-15 10:59:42 +0100 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2023-02-15 10:59:42 +0100 |
commit | ca7b8ae031d9ce12139d96caedc5d1bd369feeca (patch) | |
tree | 5506dc516c95c7f6c065dd0d4e00ee69cd53eb3b /kern/eventcount.c | |
parent | d3ef1ba20f7b6e1af5387c48d58da38cc55d3b79 (diff) | |
download | gnumach-ca7b8ae031d9ce12139d96caedc5d1bd369feeca.tar.gz gnumach-ca7b8ae031d9ce12139d96caedc5d1bd369feeca.tar.bz2 gnumach-ca7b8ae031d9ce12139d96caedc5d1bd369feeca.zip |
smp: Fix more busy loops
We need to avoid the kernel optimizing away the reads from
memory. Use a standard relaxing instruction for that.
Diffstat (limited to 'kern/eventcount.c')
-rw-r--r-- | kern/eventcount.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/kern/eventcount.c b/kern/eventcount.c index a9d7bd41..3a96b4fb 100644 --- a/kern/eventcount.c +++ b/kern/eventcount.c @@ -244,7 +244,7 @@ evc_signal(evc_t ev) #if (NCPUS > 1) retry: while((thread->state & TH_RUN) || thread->lock.lock_data) - ; + cpu_pause(); #endif thread_lock(thread); |