I have the same problem (not tried UT though, just Quake 3). Stracing quake 3 reveals that it blocks here:
Code:
write(2, "\n------- sound initialization --"..., 38
------- sound initialization -------
) = 38
setresuid32(0xffffffff, 0x3e8, 0xffffffff) = 0
open("/dev/dsp", O_RDWR
Does this mean that the open() call never returns? I am unfamiliar with strace. I have an SB Live Value which supports mmap, so I assume the ALSA OSS emulation also supports mmap... maybe it doesnt?
Most of the docs for ALSA on the Net seem to be rather out of date, however the document at
http://www.alsa-project.org/~iwai/OSS-Emulation.html has some suggestions. Catting various incantations to /proc/asound/Live/pcm0p/oss didn't do anything for me, however loading the snd-pcm-oss module with nonblock_open=1 allowed Q3 to initialise the sound... nothing actually came out of my speakers though.
Will I have to abandon ALSA alltogether I wonder...