On Tue, May 06, 2008 at 10:21:53AM -0700, Andrew Morton wrote: > up() seems to be doing wake-one, FIFO which is nice. Did the > implementation which we just removed also do that? Was it perhaps > accidentally doing LIFO or something like that? If heavily contended, it could do this. up() would increment sem->count and cal __up() which would call wake_up() down() would decrement sem->count. The unlucky task woken by __up would lose the race and go back to sleep. -- Intel are signing my paycheques ... these opinions are still mine "Bill, look, we understand that you're interested in selling us this operating system, but compare it to ours. We can't possibly take such a retrograde step." -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html