Bug 815865

Summary: None of 2 sound devices available in PulseAudio (Tumbleweed Kernel)
Product: [openSUSE] openSUSE 12.3 Reporter: Forgotten User b49zM5D78q <forgotten_b49zM5D78q>
Component: BasesystemAssignee: Frederic Crozat <fcrozat>
Status: RESOLVED DUPLICATE QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Final   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE 12.3   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Forgotten User b49zM5D78q 2013-04-18 07:25:19 UTC
User-Agent:       Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1479.0 Safari/537.36 SUSE/28.0.1479.0

After updating to OpenSUSE 12.3 + Tumbleweed I have no soundcard devices available in PulseAudio and KDE any longer.

Using Yast2 -> Sound they are available, have correct volumes set and if I test the primary one I can hear test sounds in the head phone.

But in Pavuk or in the KDE Sound Administration (Phonon) I see just the "Dummy Output Device" and no capture devices at all.



Reproducible: Always

Steps to Reproduce:
1.
2.
3.



uname -a
Linux rkrell 3.8.6-2-desktop #1 SMP PREEMPT Mon Apr 8 12:20:48 UTC 2013 (290a7e9) x86_64 x86_64 x86_64 GNU/Linux

------------------------------------------------------------------------

hwinfo --sound
20: PCI 1b.0: 0403 Audio device                                 
  [Created at pci.319]
  Unique ID: u1Nb.6+Kl9oLdQn7
  SysFS ID: /devices/pci0000:00/0000:00:1b.0
  SysFS BusID: 0000:00:1b.0
  Hardware Class: sound
  Model: "Intel 5 Series/3400 Series Chipset High Definition Audio"
  Vendor: pci 0x8086 "Intel Corporation"
  Device: pci 0x3b56 "5 Series/3400 Series Chipset High Definition Audio"
  SubVendor: pci 0x103c "Hewlett-Packard Company"
  SubDevice: pci 0x304b 
  Revision: 0x05
  Driver: "snd_hda_intel"
  Driver Modules: "snd_hda_intel"
  Memory Range: 0xf0020000-0xf0023fff (rw,non-prefetchable)
  IRQ: 49 (999 events)
  Module Alias: "pci:v00008086d00003B56sv0000103Csd0000304Bbc04sc03i00"
  Driver Info #0:
    Driver Status: snd_hda_intel is active
    Driver Activation Cmd: "modprobe snd_hda_intel"
  Config Status: cfg=yes, avail=yes, need=no, active=unknown

29: PCI 100.1: 0403 Audio device
  [Created at pci.319]
  Unique ID: NXNs.pwzlOPh9eO9
  Parent ID: 3hqH.TLdazdSljHB
  SysFS ID: /devices/pci0000:00/0000:00:03.0/0000:01:00.1
  SysFS BusID: 0000:01:00.1
  Hardware Class: sound
  Model: "ATI R700 Audio Device [Radeon HD 4000 Series]"
  Vendor: pci 0x1002 "ATI Technologies Inc"
  Device: pci 0xaa38 "R700 Audio Device [Radeon HD 4000 Series]"
  SubVendor: pci 0x1002 "ATI Technologies Inc"
  SubDevice: pci 0xaa38 
  Driver: "snd_hda_intel"
  Driver Modules: "snd_hda_intel"
  Memory Range: 0xf0110000-0xf0113fff (rw,non-prefetchable)
  IRQ: 50 (27 events)
  Module Alias: "pci:v00001002d0000AA38sv00001002sd0000AA38bc04sc03i00"
  Driver Info #0:
    Driver Status: snd_hda_intel is active
    Driver Activation Cmd: "modprobe snd_hda_intel"
  Config Status: cfg=yes, avail=yes, need=no, active=unknown
  Attached to: #9 (PCI bridge)
Comment 1 Takashi Iwai 2013-04-18 07:43:47 UTC
Check the device file permissions of /dev/snd/*.  The permissions to the desktop login user should have been granted via ACL.

% getfacl /dev/snd/*
getfacl: Removing leading '/' from absolute path names
....
# file: dev/snd/controlC0
# owner: root
# group: audio
user::rw-
user:tiwai:rw-
group::rw-
mask::rw-
other::---
....

Did you use systemd before update, too?  The migration from sysvinit to systemd might have something missing.  These device permissions should be handled via systemd-logind for now.
Comment 2 Forgotten User b49zM5D78q 2013-04-18 08:06:34 UTC
ll /dev/snd/*
crw-rw---- 1 root audio 116,  6 Apr 18 08:16 /dev/snd/controlC0
crw-rw---- 1 root audio 116,  9 Apr 18 08:16 /dev/snd/controlC1
crw-rw---- 1 root audio 116,  5 Apr 18 08:16 /dev/snd/hwC0D0
crw-rw---- 1 root audio 116,  8 Apr 18 08:16 /dev/snd/hwC1D0
crw-rw---- 1 root audio 116,  4 Apr 18 08:16 /dev/snd/pcmC0D0c
crw-rw---- 1 root audio 116,  3 Apr 18 09:09 /dev/snd/pcmC0D0p
crw-rw---- 1 root audio 116,  2 Apr 18 08:16 /dev/snd/pcmC0D2c
crw-rw---- 1 root audio 116,  7 Apr 18 08:16 /dev/snd/pcmC1D3p
crw-rw---- 1 root audio 116,  1 Apr 18 08:16 /dev/snd/seq
crw-rw---- 1 root audio 116, 33 Apr 18 08:16 /dev/snd/timer

/dev/snd/by-path:
total 0
lrwxrwxrwx 1 root root 12 Apr 18 08:16 pci-0000:00:1b.0 -> ../controlC0
lrwxrwxrwx 1 root root 12 Apr 18 08:16 pci-0000:01:00.1 -> ../controlC1

------------------------------------------------------------------------

less /etc/group #(the interesting part):
audio:x:17:pulse
pulse:!:108:
pulse-access:!:109:

--> Should be the according user in the audio group by default? In this case this hasn't been done after the upgrade.

The upgrade happened from OpenSUSE 12.2 + Tumbleweed, which used systemd, also.
Comment 3 Forgotten User b49zM5D78q 2013-04-18 08:08:21 UTC
getfacl /dev/snd/*
getfacl: Removing leading '/' from absolute path names
# file: dev/snd/by-path
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

# file: dev/snd/controlC0
# owner: root
# group: audio
user::rw-
group::rw-
other::---

# file: dev/snd/controlC1
# owner: root
# group: audio
user::rw-
group::rw-
other::---

# file: dev/snd/hwC0D0
# owner: root
# group: audio
user::rw-
group::rw-
other::---

# file: dev/snd/hwC1D0
# owner: root
# group: audio
user::rw-
group::rw-
other::---

# file: dev/snd/pcmC0D0c
# owner: root
# group: audio
user::rw-
group::rw-
other::---

# file: dev/snd/pcmC0D0p
# owner: root
# group: audio
user::rw-
group::rw-
other::---

# file: dev/snd/pcmC0D2c
# owner: root
# group: audio
user::rw-
group::rw-
other::---

# file: dev/snd/pcmC1D3p
# owner: root
# group: audio
user::rw-
group::rw-
other::---

# file: dev/snd/seq
# owner: root
# group: audio
user::rw-
group::rw-
other::---

# file: dev/snd/timer
# owner: root
# group: audio
user::rw-
group::rw-
other::---
Comment 4 Takashi Iwai 2013-04-18 08:13:06 UTC
The group "pulse" is red herring.  It's only for the case where PA is started as a system-wide daemon.  As deafult, PA daemon is started at each user session, thus the device has to be assigned to each desktop user.

So, the problem is obviously the lack of the device permissions for desktop users.  It must be an issue of systemd.  Reassigned to Frederic :)
Comment 5 Forgotten User b49zM5D78q 2013-04-18 08:26:06 UTC
Thank you, for this case:

rpm -q systemd
systemd-195-13.18.1.x86_64
Comment 6 Forgotten User b49zM5D78q 2013-04-18 08:48:53 UTC
I can also confirm: After adding my desktop user to the "audio" system group and restarting the whole OS the sound gets working everywhere fine, also in PulseAudio and KDE.

As far as I understand this, this is just the workaround for now.
Comment 7 Frederic Crozat 2013-04-18 13:18:13 UTC
please run "loginctl list-sessions" and then paste here the output of  "loginctl show-session <session_number>", using the session number for your session, from "loginctl list-sessions" output.
Comment 8 Forgotten User b49zM5D78q 2013-04-18 13:39:01 UTC
Unfortunately, there are no sessions of that kind.
"loginctl list-sessions" provides:

---
SESSION        UID USER             SEAT            

0 sessions listed.
---
Comment 9 Frederic Crozat 2013-04-18 13:45:29 UTC
this explains your ACL problem then :)

Could you do:
ls -l /etc/pam.d/common-session
Comment 10 Forgotten User b49zM5D78q 2013-04-19 06:43:46 UTC
-rw-r--r-- 1 root root 450 Feb  7 10:53 /etc/pam.d/common-session

(In reply to comment #9)
> this explains your ACL problem then :)
> 
> Could you do:
> ls -l /etc/pam.d/common-session
Comment 11 Frederic Crozat 2013-04-19 07:31:45 UTC
ok, it looks like a duplicate of bnc#812462

Could you search in yast log and zypper history file, at the time /etc/pam.d/common-session was modified (Feb 7 10:53) what happened (which package was being updated, etc) ? (add that comment to the other bug I'm marking this one dup)

This will help us to find the culprit.

To fix the issue for you, replace /etc/pam.d/common-session by a symlink to /etc/pam.d/common-session-pc.

*** This bug has been marked as a duplicate of bug 812462 ***