On 11/23, Paul E. McKenney wrote:
>
> For general use, I believe that this has
> difficulties with the sequence of events I sent out on November 20th, see:
>
> http://marc.theaimsgroup.com/?l=linux-kernel&m=116397154808901&w=2
>
> ...
>
> I don't understand why an unlucky sequence of events mightn't be able
> to hang this __wait_event(). Suppose we did the atomic_dec_and_test(),
> then some other CPU executed xxx_read_unlock(), finding no one to awaken,
> then we execute the __wait_event()?
Please note how ->ctr[] is initialized,
atomic_set(sp->ctr + 0, 1); <---- 1, not 0
atomic_set(sp->ctr + 1, 0);
atomic_read(sp->ctr + idx) == 0 means that this counter is inactive,
nobody use it.
Oleg.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]