Bug 513714

Summary: ACL handling of audio devices broken.
Product: [Fedora] Fedora Reporter: Quentin Armitage <quentin>
Component: pulseaudioAssignee: Lennart Poettering <lpoetter>
Status: CLOSED UPSTREAM QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: lkundrak, lpoetter, quentin, wtogami
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-08-24 02:40:13 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 514084, 514086    
Bug Blocks:    
Attachments:
Description Flags
Output of pulseaudio -vvvvv
none
Output of pulseaudio -vvvvv including running of audacity
none
Output of pulseaudio - attempting to set output volume none

Description Quentin Armitage 2009-07-24 21:36:30 UTC
Created attachment 355105 [details]
Output of pulseaudio -vvvvv

Description of problem:
I get no sound output or input in Rawhide. Fedora11 on the same systems works fine.

Version-Release number of selected component (if applicable):
pulseaudio-0.9.16-2.test2.fc12.i586

How reproducible:
Always

Steps to Reproduce:
1.Attempt to generate sound output (e.g. GUI login)
2.
3.
  
Actual results:
No sound

Expected results:
Sound output

Additional info:
Sound works fine on the same machine running Fedora11.
If I set an output volume in Sound Preferences, after a sort while it sets itself back to muted. On the Input tab, it lists no input devices, and on the output tabs it lists Null Output - Stereo.

Comment 1 Lennart Poettering 2009-07-25 00:32:21 UTC
This is mst likely due to some driver problem which causes PA to unload the ALSA module.

Please open a new terminal. Do a "pulseaudio -k" and a "pulseaudio -vvvvv" there. Then try to reproduce. This should generate some output in the terminal which I'd like you to provide me with.

Comment 2 Quentin Armitage 2009-07-25 07:04:14 UTC
Output of pulseaudio -vvvvv aleady attached.

I found that when I did pulseaudio -k, pulseaudio restarted automatically. I had to log out from the GUI and run it from a text mode virtual console in order to be able to get pulseaudio not running.

Comment 3 Lennart Poettering 2009-07-25 11:45:39 UTC
PA autospawns on first use if it isn't running. Try to run "pulseaudio -k ; pulseaudio -vvvvv" in one line to make sure you are quicker than the autospawning.

And please get me that pulseaudio -vvvv output *when the issue happens*. I want to see the lines that are generated when you reproduce the issue.

Comment 4 Quentin Armitage 2009-07-26 07:31:06 UTC
Created attachment 355181 [details]
Output of pulseaudio -vvvvv including running of audacity

Attached is the output of pulseaudio -vvvvv when after running pulseaudio I set the output volume to something unmuted, then ran audacity (after which the output volume again showed muted).

Comment 5 Lennart Poettering 2009-07-26 12:35:10 UTC
PA cannot open your sound card:

E: module-alsa-card.c: Card '0' doesn't exist: Permission denied

This is a permission issue.

Comment 6 Quentin Armitage 2009-07-27 09:07:46 UTC
Created attachment 355250 [details]
Output of pulseaudio - attempting to set output volume

Looking through the source code of pulseaudio and alsa--libs, I see that the permissions problem occurs when attempting to open /dev/snd/ControlC[12]. An ls --lcontext /dev/snd shows:
drwxr-xr-x. 2 system_u:object_r:device_t:s0    root root       80 2009-07-27 09:19 by-path
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116, 12 2009-07-27 09:19 controlC0
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116,  5 2009-07-27 09:19 controlC1
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116, 11 2009-07-27 09:19 pcmC0D0c
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116, 10 2009-07-27 09:19 pcmC0D0p
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116,  9 2009-07-27 09:19 pcmC0D1c
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116,  8 2009-07-27 09:19 pcmC0D2c
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116,  7 2009-07-27 09:19 pcmC0D3c
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116,  6 2009-07-27 09:19 pcmC0D4p
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116,  4 2009-07-27 09:19 pcmC1D0c
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116,  3 2009-07-27 09:19 pcmC1D0p
crw-rw----+ 1 system_u:object_r:sound_device_t:s0 root audio 116,  2 2009-07-27 09:19 timer

I have changed the permissions of /dev/snd/[cpt]* to 0666, and I don't get the permissions error anymore. What is responsible for setting the permissions of the /dev/snd/* files; is it udev or ConsoleKit or something else? I am not aware that I have altered anything that would cause anything to have non-standard behaviour in that area. [PROBLEM 1]

[PROBLEM 2]: Now that I can open the /dev/snd/ControlC[12] files, I have attempted to set the output volume above zero/non-muted. Whenever I attempt to do that with Sound Preferences, on exiting Sound Preferences the volume displayed by the icon shows that it is muted again. The attachment is the output of pulseaudio -vvvvv while attempting to set the output volume.

Comment 7 Lennart Poettering 2009-07-27 14:25:55 UTC
ACL handling is the job of HAL+ck on F11 and udev-acl+ck on F12.

Comment 8 Lennart Poettering 2009-08-24 02:40:13 UTC
udev/acl handling should be fixed in test6 now. (Which is commit but not in koji since perl is currently broken)