possible deadlock in pipes

Anton Blanchard anton at samba.org
Fri Aug 22 08:39:17 EST 2003


> How hard is it to hit? I think we should be using set_task_state()
> which includes a memory barrier. I also updated the other open coded
> statements to use __set_task_state. Finally I got rid of some redundant
> wmb()s and added unlikely() to force the slow path out of line

FYI one issue with our semaphonres is that they are unfair. The x86
semaphores force everyone into the slow path once there are waiters
which serialises them. Our semaphores dont so you could have one task
stuck in the slow path while another one continuously drops and takes
the lock faster than the other one can wake up.

Anton

** Sent via the linuxppc64-dev mail list. See http://lists.linuxppc.org/





More information about the Linuxppc64-dev mailing list