Qiao Zhou wrote:
when usb audio device removes, it doesn't notify the ALSA read /
write thread. due to no data transmitting any more, those threads
wait for a long timeout(10s), then detects IO error. it causes
long time blocking in upper layer read/write.
to fix this issue, wake up
On 08/01/2013 03:33 PM, Clemens Ladisch wrote:
Qiao Zhou wrote:
when usb audio device removes, it doesn't notify the ALSA read /
write thread. due to no data transmitting any more, those threads
wait for a long timeout(10s), then detects IO error. it causes
long time blocking in upper layer
when usb audio device removes, we need to stop the current pcm
substream when detecting hw disconnects. otherwise the read /
write thread may sleep for long time before timeout, thus upper
layer is blocked for long time and can't repsond quickly to the
hw disconnection.
also substream pcm may
when usb audio device removes, it doesn't notify the ALSA read /
write thread. due to no data transmitting any more, those threads
wait for a long timeout(10s), then detects IO error. it causes
long time blocking in upper layer read/write.
to fix this issue, wake up potential sleep thread if