Bug in pa_poll?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 2012-03-17 at 10:13 +0100, Marcel M?ller wrote:
> If select() in the implementation of pa_poll returns an error because of 
> an invalid socket, pa_poll tries to find out which descriptor is bad. 
> And then retries the select. But this is still in not synchronized 
> context. So a second descriptor may become bad on the second call to 
> select. This is not captured. And consequently pa_poll fails and the 
> mainloop terminates, resulting in deadlocks if further activity is on 
> the way.
> It seems that I managed to trigger this problem on OS/2 from time to 
> time when closing a pa_stream and a pa_context and opening another 
> context at almost the same time.
> 
> I would recommend to jump to the previous select() call instead of 
> executing another one without error checking. To avoid infinite loops 
> this should only be done if the check removed at least one descriptor.

Do you have a patch yet?

-- 
Tanu



[Index of Archives]     [Linux Audio Users]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux