diff -urN 2.4.4pre2/kernel/fork.c waitqueue/kernel/fork.c --- 2.4.4pre2/kernel/fork.c Thu Apr 12 16:20:56 2001 +++ waitqueue/kernel/fork.c Thu Apr 12 16:22:06 2001 @@ -38,8 +38,8 @@ { unsigned long flags; - wq_write_lock_irqsave(&q->lock, flags); wait->flags &= ~WQ_FLAG_EXCLUSIVE; + wq_write_lock_irqsave(&q->lock, flags); __add_wait_queue(q, wait); wq_write_unlock_irqrestore(&q->lock, flags); } @@ -48,8 +48,8 @@ { unsigned long flags; - wq_write_lock_irqsave(&q->lock, flags); wait->flags |= WQ_FLAG_EXCLUSIVE; + wq_write_lock_irqsave(&q->lock, flags); __add_wait_queue_tail(q, wait); wq_write_unlock_irqrestore(&q->lock, flags); }