Hi, I noticed pulseaudio has problems starting when OSSv4 is loaded, and traced it down to using select() and GET{I,O}SPACE with an mmap()'d device (PulseAudio tries using mmap unless explicitly told otherwise). OSS doesn't support that, and returns -EIO, which is an error code PulseAudio doesn't check for and eventually leads to it failing to start. One might consider blaming Pulseaudio, except:
A) These limitations aren't documented anywhere I can see. AFAICT FreeBSD's implementation does support using select(),etc. with mmap(). B) OSS's return value isn't entirely consistent: It returns OSS_EIO when select() is used (oss_audio_core.c / oss_audio_chpoll() ), but OSS_EPERM when GETOSPACE is used with mmap. OSS_EIO seems wrong to me - the device is okay, it's just select() isn't supported in the current mode. Yours, Yair K. _______________________________________________ oss-devel mailing list oss-devel@mailman.opensound.com http://mailman.opensound.com/mailman/listinfo/oss-devel