aboutsummaryrefslogtreecommitdiffstats
path: root/erts/emulator/beam/erl_process_lock.c
diff options
context:
space:
mode:
authorRickard Green <[email protected]>2010-12-11 08:35:33 +0100
committerRickard Green <[email protected]>2010-12-16 12:38:55 +0100
commit55251749b99ae51ce12c5dff2ac06ca5ceb02120 (patch)
treeaa9a1278f40dff5dcf4b2aba1b493fab653802a4 /erts/emulator/beam/erl_process_lock.c
parentdc122c3a919a2b2fb3ff1f02591ff1872de1c996 (diff)
downloadotp-55251749b99ae51ce12c5dff2ac06ca5ceb02120.tar.gz
otp-55251749b99ae51ce12c5dff2ac06ca5ceb02120.tar.bz2
otp-55251749b99ae51ce12c5dff2ac06ca5ceb02120.zip
Use 32-bit atomic for uaflgs in thread specific events
Diffstat (limited to 'erts/emulator/beam/erl_process_lock.c')
-rw-r--r--erts/emulator/beam/erl_process_lock.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/erts/emulator/beam/erl_process_lock.c b/erts/emulator/beam/erl_process_lock.c
index 2e7bc73622..72560aa124 100644
--- a/erts/emulator/beam/erl_process_lock.c
+++ b/erts/emulator/beam/erl_process_lock.c
@@ -413,7 +413,7 @@ transfer_locks(Process *p,
do {
erts_tse_t *tmp = wake;
wake = wake->next;
- erts_atomic_set(&tmp->uaflgs, 0);
+ erts_atomic32_set(&tmp->uaflgs, 0);
erts_tse_set(tmp);
} while (wake);
@@ -509,14 +509,14 @@ wait_for_locks(Process *p,
ASSERT((wtr->uflgs & ~ERTS_PROC_LOCKS_ALL) == 0);
- erts_atomic_set(&wtr->uaflgs, 1);
+ erts_atomic32_set(&wtr->uaflgs, 1);
erts_pix_unlock(pix_lock);
while (1) {
int res;
erts_tse_reset(wtr);
- if (erts_atomic_read(&wtr->uaflgs) == 0)
+ if (erts_atomic32_read(&wtr->uaflgs) == 0)
break;
/*