Linux audio strikes back
Fedora 7’s new Firewire stuff might not be totally together: when I plugged in my DV cam, I couldn’t read the device except (I guess?) as root. (Kino also kept crashing, and I ended up just using dvgrab.)
Apparent side-effect of running sudo kino: some shared memory used
by dmix became owned by root and mod 0600. Thus when you run
something like, say, aplay (ALSA configured to use dmix by default),
you get “unable to create IPC semaphore” (among some other lines).
My fix:
-
grep ipc_key /etc/alsa/*. In my case, I see something like/etc/alsa/alsa.conf:defaults.pcm.ipc_key 5678293(that’s0x56a4d5). -
ipcs -aand look for the IPC key in hex. I had both0x56a4d5and0x56a4d6. I… hope0x56a4d6belonged to ALSA because… - First I made sure that the
nattachcolumn said0for any dmix-related segments/semaphores, then - I used
ipcrm -M 0x56a4d5(and thenipcrm -M 0x56a4d6) to delete those shared memory segments, andipcrm -S 0x56a4d5to delete the semaphores (“Semaphore Arrays” is the heading; maybe simply saying “semaphores” is poor form on my part).
Then audio worked.
I am more and more looking forward to Fedora 8 and PulseAudio.
I’ve run into “unable to create IPC semaphore” with the same symptom of being able to use it only as root. On a whim I changed my ipc_key, restarted alsa and tada! everything was happy. I suppose there was some kind of bizarre collision? *shrug* … at any rate, I figure I’d put my 2 cents some place as a help to anyone who googles onto this in search of a solution.
Comment by harmless — Thursday, 24 April 2008 @ 20:57:03