FS#31163 - [alsa-utils] alsa-restore.service doesn't work

Attached to Project: Arch Linux
Opened by Andrew Gaydenko (student975) - Thursday, 16 August 2012, 21:42 GMT
Last edited by Gerardo Exequiel Pozzi (djgera) - Wednesday, 02 April 2014, 17:31 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Tobias Powalowski (tpowa)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 2
Private No

Details

Please look at https://bbs.archlinux.org/viewtopic.php?id=147206 for issue explanation.
This task depends upon

Closed by  Gerardo Exequiel Pozzi (djgera)
Wednesday, 02 April 2014, 17:31 GMT
Reason for closing:  Fixed
Comment by Greg (dolby) - Friday, 24 August 2012, 13:16 GMT
Please describe the bug you're facing here. Dont point to forum links
Comment by Andrew Gaydenko (student975) - Friday, 24 August 2012, 15:08 GMT
I have three sound cards, indexed in accordance with:

$ cat /etc/modprobe.d/alsa.conf
options snd slots=snd-hda-intel,snd-hdsp,snd-usb-audio

snd-hda-intel - built in motherboard
snd-hdsp - PCI RME HDSP 9632
snd-usb-audio - mic inside video camera

After system booting up settings for snd-hdsp are not restored. In particular, say, Sample Clock Source is set to internal clock 48.0 KHz (default value for professional cards) instead of external clock source, i.e. AutoSync in terms of the driver.

Manual starting of the alsa-restore service sets the card into expected state.

I haven't noticed any problems with other sound cards in use. Also storing service seems to work without problems also.

Are other details needed?

P.S. In other bugs reports I have noticed refs to forum discussions. This is the reason I was followed this way.
Comment by Dave Reisner (falconindy) - Friday, 24 August 2012, 15:17 GMT
> Manual starting of the alsa-restore service sets the card into expected state.
What does 'systemctl status alsa-restore.service' show after bootup?

> P.S. In other bugs reports I have noticed refs to forum discussions. This is the reason I was followed this way.
Making a developer dig through a rambling discussion on a forum thread is not a suitable replacement for a bug report.
Comment by Andrew Gaydenko (student975) - Friday, 24 August 2012, 15:34 GMT
The command shows

~ $ sudo systemctl status alsa-restore.service
Password:
alsa-restore.service - Restore Sound Card State
Loaded: loaded (/usr/lib/systemd/system/alsa-restore.service; static)
Active: inactive (dead) since Fri, 24 Aug 2012 19:30:53 +0400; 24s ago
Process: 270 ExecStart=/usr/sbin/alsactl restore (code=exited, status=0/SUCCESS)
CGroup: name=systemd:/system/alsa-restore.service

And at the moment hdsp configuration isn't restored.
Comment by Christian Ciach (DerEineDa) - Wednesday, 12 September 2012, 17:48 GMT
I have the same problem, but my status output is different.

~ $ sudo systemctl status alsa-restore.service
alsa-restore.service - Restore Sound Card State
Loaded: loaded (/usr/lib/systemd/system/alsa-restore.service; static)
Active: inactive (dead) since Wed, 12 Sep 2012 21:03:18 +0200
Process: 166 ExecStart=/usr/sbin/alsactl restore (code=exited, status=19)
CGroup: name=systemd:/system/alsa-restore.service

Also, I see this in my systemd journal:

~ $ sudo journalctl -a | grep alsa
Sep 12 21:03:18 Maya alsactl[166]: /usr/sbin/alsactl: load_state:1696: No soundcards found...

My soundcard is an Asus Xonar Essence STX. Restoring the alsa state manually after login works as expected.
Comment by Tobias Powalowski (tpowa) - Wednesday, 24 April 2013, 06:37 GMT
Is this still valid?
Comment by NewWorld (NewWorld) - Monday, 06 May 2013, 12:03 GMT
> Is this still valid?
For me, yes:
$ systemctl status alsa-restore.service
alsa-restore.service - Restore Sound Card State
Loaded: loaded (/usr/lib/systemd/system/alsa-restore.service; static)
Active: inactive (dead) since Mon 2013-05-06 13:01:31 BST
Process: 152 ExecStart=/usr/sbin/alsactl restore (code=exited, status=19)

Relevant parts from `sudo journalctl -a | grep alsa`:
May 06 13:01:22 myarch systemd[1]: Installed new job alsa-restore.service/start as 58
May 06 13:01:28 myarch systemd[1]: Starting of alsa-state.service requested but condition failed. Ignoring.
May 06 13:01:28 myarch systemd[1]: Job alsa-state.service/start finished, result=done
May 06 13:01:28 myarch systemd[1]: About to execute: /usr/sbin/alsactl restore
May 06 13:01:28 myarch systemd[1]: Forked /usr/sbin/alsactl as 152
May 06 13:01:28 myarch systemd[1]: alsa-restore.service changed dead -> start
May 06 13:01:28 myarch systemd[152]: Executing: /usr/sbin/alsactl restore
May 06 13:01:31 myarch alsactl[152]: /usr/sbin/alsactl: load_state:1729: No soundcards found...
May 06 13:01:31 myarch systemd[1]: Received SIGCHLD from PID 152 (alsactl).
May 06 13:01:31 myarch systemd[1]: Got SIGCHLD for process 152 (alsactl)
May 06 13:01:31 myarch systemd[1]: Child 152 belongs to alsa-restore.service
May 06 13:01:31 myarch systemd[1]: alsa-restore.service: main process exited, code=exited, status=19/n/a
May 06 13:01:31 myarch systemd[1]: alsa-restore.service changed start -> dead
May 06 13:01:31 myarch systemd[1]: Job alsa-restore.service/start finished, result=done
May 06 13:01:31 myarch systemd[1]: alsa-restore.service: cgroup is empty

Running `sudo alsactl restore` manually after boot works as should (restores soundcard state to what it was before reboot).

My sound card is "Intel Corporation 82801H (ICH8 Family) HD Audio Controller (rev 02)"
Comment by Gerardo Exequiel Pozzi (djgera) - Thursday, 13 March 2014, 00:46 GMT
  • Field changed: Status (Assigned → Waiting on Response)
status? upstream report?
Comment by Andrew Gaydenko (student975) - Thursday, 13 March 2014, 06:05 GMT
For me the problem has gone.

Loading...