On Sat, Jan 28, 2012 at 4:03 AM, tip-bot for Yasunori Goto <y-goto@xxxxxxxxxxxxxx> wrote: > > sched: Fix ancient race in do_exit() Ugh. It would be much nicer to just clear the rwsem waiter->task thing *after* waking the task up, which would avoid this race entirely, afaik. Tell me, why wouldn't that work? rwsem_down_failed_common() does /* wait to be given the lock */ for (;;) { if (!waiter.task) break; ... so then we wouldn't need the task refcount crap in rwsem either etc, and we'd get rid of all races with wakeup. I wonder why we're clearing that whole waiter->task so early. Linus -- To unsubscribe from this list: send the line "unsubscribe linux-tip-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html