On Fri, Dec 22, 2000 at 06:33:00PM +1100, Andrew Morton wrote:
> add_waitqueue_exclusive() and TASK_EXCLUSIVE, add a

There's no add_waitqueue_exclusive in my patch.

> Except for this bit, which looks slightly fatal:
> 
>       /*
>          * We can drop the read-lock early if this
>          * is the only/last process.
>          */
>         if (next == head) {
>                  read_unlock(&waitqueue_lock);
>                  wake_up_process(p);
>                  goto out;
>         }
> 
> Once the waitqueue_lock has been dropped, the task at `p'
> is free to remove itself from the waitqueue and exit.  This
> CPU can then try to wake up a non-existent task, no?

Yes, that was an unlikely-to-happen SMP race I inerith from 2.2.18 and all
previous 2.2.x vanilla kernels. Thanks.

Andrea
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to