On 07/03/13 10:58, Izumi Tsutsui wrote:
> Fix following bugs in "fallback implementation of counting semaphores
> with mutex+condvar" added in c166cb72f1676855816340666c3b618beef4b976:
>  - waiting threads are not restarted properly if more than one threads
>    are waiting unblock signals in qemu_sem_timedwait()
>  - possible missing pthread_cond_signal(3) calls when waiting threads
>    are returned by ETIMEDOUT
>  - fix an uninitialized variable
> The problem is analyzed by and fix is provided by Noriyuki Soda.
> 
> Also put additional cleanup suggested by Laszlo Ersek:
>  - make QemuSemaphore.count unsigned (it won't be negative)
>  - check a return value of in pthread_cond_wait() in qemu_sem_wait()
> 
> Signed-off-by: Izumi Tsutsui <[email protected]>
> Reviewed-by: Laszlo Ersek <[email protected]>
> ---
> 
>  v3:
>  - fix a missed assignment and actually check a retval of pthread_cond_wait()

Compared v3 against v2.

Reviewed-by: Laszlo Ersek <[email protected]>

Laszlo

Reply via email to