X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Frwsem.c;h=62fa4eba9ffeb3066b385def40c853c4ff05a37f;hb=f7f1b0f1e2fbadeab12d24236000e778aa9b1ead;hp=7644089ec8fa00e7cb58e2a2adaa5ce567ce2b3b;hpb=e3f6fb6212a7102bdb56ba38fa1e98fe72950475;p=linux-2.6.git diff --git a/lib/rwsem.c b/lib/rwsem.c index 7644089ec..62fa4eba9 100644 --- a/lib/rwsem.c +++ b/lib/rwsem.c @@ -74,7 +74,7 @@ __rwsem_do_wake(struct rw_semaphore *sem, int downgrading) */ list_del(&waiter->list); tsk = waiter->task; - mb(); + smp_mb(); waiter->task = NULL; wake_up_process(tsk); put_task_struct(tsk); @@ -117,7 +117,7 @@ __rwsem_do_wake(struct rw_semaphore *sem, int downgrading) waiter = list_entry(next, struct rwsem_waiter, list); next = waiter->list.next; tsk = waiter->task; - mb(); + smp_mb(); waiter->task = NULL; wake_up_process(tsk); put_task_struct(tsk);