Why the fuck do you want to round a *sound mixer* inside your *kernel space* ?! Do you run your video decoder and webbrowser there too ? I prefer t o run unnecessary things like sound as daemons in userspace. Thank you very much.
Because that's exactly where it should be. No other kernel interface says to an application "Sorry, this interface is in use. one at a time please". Stupid, but initially the whole whole rationale behind PulseAudio according to Poettering was to make mixing work and no software mixing code would be accepted in the kernel, which is odd, because no one had ever tried. The 'one interface at a time' thing would have been reason enough for Linus to consider the issue. No other kernel interface does it, and for good reason.