# [2.6.30] Problèmes avec Alsa [Résolu]

## Gaby

Bonjour,

Depuis mon passage au kernel 2.6.30-r1 gentoo sources, j'ai 2 problèmes disctincts (ou pas ?) avec alsa :

1/ Les modules se chargent bien au boot mais le son est à chier pendant environ 20-30sec et après tout rentre dans l'ordre. Je n'avais pas ce problème avant en 2.6.28-r3. 

2/ Au shutdown, impossible de décharger les modules alsa donc je suis obligé d'éteindre au bouton.

Si je stop alsasound manuellement :

```
Shogun gaby # /etc/init.d/alsasound restart

* WARNING: you are stopping a boot service

* Storing ALSA Mixer Levels...                                            [ ok ]

* Killing processes using ALSA...                                         [ ok ]

* Unloading ALSA modules...

ERROR: Removing 'snd_hda_codec_analog': Device or resource busy           [ ok ]

* Loading ALSA modules...

*   Could not detect custom ALSA settings.  Loading all detected alsa drivers.

*   Loading: snd_hda_intel...                                             [ ok ]

*   Loading: snd-mixer-oss...                                             [ ok ]

*   Loading: snd-pcm-oss...                                               [ ok ]

*   Loading: snd-seq...                                                   [ ok ]

* Restoring Mixer Levels...                                               [ ok ]
```

Sauf que je ne vois pas du tout ce qui utilise la carte son à ce moment là (mpd stoppé)

J'ai refais un check dans la config du kernel pour tout ce qui est alsa, rien à signaler à priori. J'ai recompilé le noyau et ses modules au cas ou, sans succès.

```
Shogun gaby # lsmod

Module                  Size  Used by

snd_seq                49264  0 

snd_seq_device          6772  1 snd_seq

snd_pcm_oss            37296  0 

snd_mixer_oss          15776  1 snd_pcm_oss

snd_hda_codec_atihdmi     3872  1 

snd_hda_codec_analog    74240  1 

snd_hda_intel          25640  0 

snd_hda_codec          55440  3 snd_hda_codec_atihdmi,snd_hda_codec_analog,snd_hda_intel

snd_pcm                71576  3 snd_pcm_oss,snd_hda_intel,snd_hda_codec

snd_timer              20208  2 snd_seq,snd_pcm

snd                    56712  9 snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_hda_codec_analog,snd_hda_intel,snd_hda_codec,snd_pcm,snd_timer

snd_page_alloc          8864  2 snd_hda_intel,snd_pcm

radeon                358640  1 

coretemp                6752  0 

w83627ehf              22784  0 

hwmon_vid               2688  1 w83627ehf

hwmon                   2680  2 coretemp,w83627ehf

soundcore               6736  1 snd

i2c_i801                9276  0 

```

```
Shogun gaby # lspci -v | grep Audio

00:1b.0 Audio device: Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02)

01:00.1 Audio device: ATI Technologies Inc Radeon HD 3870 Audio device
```

Des idées ? 

GabyLast edited by Gaby on Thu Jun 25, 2009 9:57 am; edited 1 time in total

----------

## kwenspc

T'as re-emerger alsa-lib? je dis ça c'est peut être pas la source du problème.

----------

## Gaby

J'ai recompilé media-libs/alsa-lib en version 1.0.18 mais toujours les 2 problèmes.

En fait je dois m'y reprendre a 2 fois pour couper les modules alsa :

```
Shogun gaby # /etc/init.d/alsasound stop

* WARNING: you are stopping a boot service

* Stopping Music Player Daemon...                                         [ ok ]

* Storing ALSA Mixer Levels...                                            [ ok ]

* Killing processes using ALSA...                                         [ ok ]

* Unloading ALSA modules...

^C* alsasound: caught SIGINT, aborting  #CTRL+C sinon il reste bloqué à ce niveau

Shogun gaby # lsmod

Module                  Size  Used by

snd_hda_codec_atihdmi     3872  1 

snd_hda_codec_analog    74240  1 

snd_hda_intel          25640  0 

snd_hda_codec          55440  3 snd_hda_codec_atihdmi,snd_hda_codec_analog,snd_hda_intel

snd_pcm                71576  2 snd_hda_intel,snd_hda_codec

snd_timer              20208  1 snd_pcm

snd                    56712  5 snd_hda_codec_analog,snd_hda_intel,snd_hda_codec,snd_pcm,snd_timer

snd_page_alloc          8864  2 snd_hda_intel,snd_pcm

radeon                358640  1 

coretemp                6752  0 

w83627ehf              22784  0 

hwmon_vid               2688  1 w83627ehf

hwmon                   2680  2 coretemp,w83627ehf

soundcore               6736  1 snd

i2c_i801                9276  0 

Shogun gaby # /etc/init.d/alsasound stop

* WARNING: you are stopping a boot service

* Storing ALSA Mixer Levels...                                            [ ok ]

* Killing processes using ALSA...                                         [ ok ]

* Unloading ALSA modules...

ERROR: Removing 'snd_hda_codec_analog': Device or resource busy           [ ok ]

Shogun gaby # lsmod

Module                  Size  Used by

radeon                358640  1 

coretemp                6752  0 

w83627ehf              22784  0 

hwmon_vid               2688  1 w83627ehf

hwmon                   2680  2 coretemp,w83627ehf

soundcore               6736  0 

i2c_i801                9276  0 
```

----------

## kwenspc

OUi je vois pas trop. Tu as retentés un alsaconf ? mais là encore je doute de l'effet. Pour moi ça ressemble à du buffer mal initialisé ton truc, donc directement au niveau drivers.

----------

## Gaby

Le point 1 est résolu.

Je ne sais pas si c'est la recompil de alsa-lib ou autre chose mais j'ai l'impression que plus je relancais alsaconf et plus le défaut était court. Maintenant c'est ok.

Reste encore le problème de déchargement des modules.

J'ai refais un alsaconf sans succès. Par contre un truc curieux c'est qu'il ne lance pas l'affichage immédiatement après la commande. Il a l'air d'attendre quelque chose. Si je fais un CTRL+C il m'affiche bien l'application.

Edit : Je n'ai pas le problème de déchargement avec le kernel 2.6.28-r3Last edited by Gaby on Thu Jun 25, 2009 9:25 am; edited 1 time in total

----------

## kwenspc

Est ce que tu as le support pour "Forced module unloading" dans ton noyau? (c'est dans "Enable loadable module support")

Sinon le module qui flanche est celui relatif au aux device Analog AD1986A. Tu as bien ce matos? C'est utile? Vires le pour voir.

----------

## Gaby

Résolu, j'ai trouvé un post ur Gentoo Quebec qui parle du problème sur 2.6.29 ==> ici

Le correctif :

```
# nano /etc/conf.d/alsasound

UNLOAD_ON_STOP="no"
```

J'ai lu rapidement le bug associé et il semblerait, si j'ai bien compris, que le problème sera corriger dans une prochaine version d'alsa.

Merci pour ton aide kwenspc. Pour te répondre, j'ai bien le "Forced module unloading" et j'ai nettoyé les supports déclaré dans le noyau.

Gaby

----------

## Gef

Dans mon /etc/conf.d/alsasound :

 *Quote:*   

> 
> 
> # Deprecated options:
> 
> # Upstream feels, and we wholehartedly agree, that this was a silly idea
> ...

 

(media-sound/alsa-utils-1.0.20).

----------

## yoyo

C'est un bug "connu" des modules ALSA pour chipset intel HD sur ce noyau ... Si j'ai tout bien compris c'est un problème d'ordre de déchargement des modules : le script/noyau essaie de décharger le module "A" encore utilisé par le module "B" au lieu de l'inverse. Du coup "A" refuse de se décharger et le script attend patiemment (plus que l'utilisateur en général  :Wink:  ).

Les patch à appliquer ajustent simplement l'ordre de déchargement des modules; mais la solution la plus radicale est bien sur de les laisser en mémoire et de couper l'alimentation : dans ce cas, on ne demande l'avis de personne, tout le monde dégage !  :Rolling Eyes: 

Pour Gef, J'aurai laissé les "KILLPROC" car tu risques d'avoir des messages d'erreur au démarrage suivant si l'initscript vérifie que le alsasound.pid (ou équivalent) n'existe pas. Cela dit si tu monte en ram le dossier contenant les fichiers pid ça "règle" aussi ce problème ...

Enjoy !

----------

## Gef

yoyo,

J'utilise la solution intermédiaire : /var/run/ sur le disque, mais l'option idoine d'OpenRC/Baselayout-2 pour nettoyer ce répertoire au boot.

----------

## DuF

Je suis passé au noyau 2.6.29 hier soir et j'avais le problème. Je viens aujourd'hui sur le forum et il y a un contournement  :Smile: 

Je dis merci et aussi que le forum est toujours utile   :Razz: 

NB : Sans doute qu'il y a quelques semaines, je serai venu chopper l'info sans laisser de messages, c'est juste histoire de donner de l'eau au moulin de certains   :Wink: 

----------

