[alsa-devel] Can not rmmod snd_hda_codec_hdmi
Takashi Sakamoto
o-takashi at sakamocchi.jp
Wed Dec 24 13:28:33 CET 2014
On Dec 24 2014 20:54, Xuebing Wang wrote:
> Anssi, thanks for your help.
>
> 1) In Fedora 21 (kernel 3.17.4),
> 'fuser -v /dev/snd/*' shows below:
> /dev/snd/controlC0: xbing 2400 F.... pulseaudio
> /dev/snd/controlC1: xbing 2400 F.... pulseaudio
> /dev/snd/pcmC0D3p: xbing 2400 F...m pulseaudio
> /dev/snd/pcmC1D0c: xbing 2400 F...m pulseaudio
> /dev/snd/pcmC1D0p: xbing 2400 F...m pulseaudio
>
> After 'pulseaudio --kill' to kill pulseaudio (after disable autospawn),
> lsmod shows refcount of snd_hda_intel is down from 7 to 2 as below:
> $ lsmod | grep hda_intel
> snd_hda_intel 30479 2
>
> 'rmmod snd_hda_intel' still shows this module is in use.
>
> 2) But, in Ubuntu 14.04.1 (kernel 3.13.0) DOES work after 'pulseaudio --kill', because lsmod shows refcount of snd_hda_intel is 5.
>
> Any suggestions? Could it be because of kernel difference 3.17.4 vs 3.13.0?
In Ubuntu, pulseaudio process re-run even if you kill the process. See:
https://wiki.ubuntu.com/PulseAudio/Log
But in this case, you don't need to kill pulseaudio. You just set 'off'
for card profile, or unload alsa-card module. Then these character
devices are released.
The way to set card profile:
$ pactl list cards | grep Card
Card #3
$ pactl set-card-profile 3 off
Or use 'configuration' tab in pavucontrol GUI. In Ubuntu, this
application is released by 'pavucontrol' package.
The way to unload alsa-card module:
$ pactl list modules | grep alsa
(... you can see module-alsa-card is loaded.)
$ pactl unload-module module-alsa-card
$ pactl list modules | grep alsa
(... you can see module-alsa-card is unloaded.)
Regards
Takashi Sakamoto
o-takashi at sakamocchi.jp
More information about the Alsa-devel
mailing list