Hi Takashi, > Why not poll()? > IOW, why ioplug must be handled specially regarding the non-blocking >operation? The normal kernel driver behaves like that (returning > -EAGAIN, and let apps to sync with poll()). What do you think about the following solution? (I thought the whole time that you have to use snd_pcm_wait() to wait for drain in nonblocking mode but you have to use the poll_descriptors directly.) Know I am expecting that the user is calling poll() if snd_pcm_drain() returns -EAGAIN and the user has to call snd_pcm_drain() again after poll returns to check if drain is done. Thanks for your help so far. Best regards Timo _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel