diff options
author | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2008-05-09 23:56:03 -0400 |
---|---|---|
committer | Bjoern B. Brandenburg <bbb@cs.unc.edu> | 2008-05-09 23:56:03 -0400 |
commit | d2b711fc7a253d6a33e326156b9f0eb786f483f1 (patch) | |
tree | 8f8f405553ec5fb77d836e9e18fd2c8cac01126d | |
parent | b8f6aa9907fd0f0178faa22d9fc242bd449b3709 (diff) |
LITMUS: Use atomic ops to clear bit.
This is modeled after tasklets. Just writing a 0 does not have
the desired effect on SPARC64.
-rw-r--r-- | litmus/norqlock.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/litmus/norqlock.c b/litmus/norqlock.c index d0cbe1388e..11f85d352a 100644 --- a/litmus/norqlock.c +++ b/litmus/norqlock.c | |||
@@ -47,8 +47,8 @@ void tick_no_rqlock(void) | |||
47 | todo = next; | 47 | todo = next; |
48 | next = next->next; | 48 | next = next->next; |
49 | todo->next = NULL; | 49 | todo->next = NULL; |
50 | mb(); | 50 | smp_mb__before_clear_bit(); |
51 | todo->active = 0; | 51 | clear_bit(0, (void*) &todo->active); |
52 | todo->work(todo->arg); | 52 | todo->work(todo->arg); |
53 | } | 53 | } |
54 | 54 | ||