Ticket #369 (closed bug: fixed)

Opened 7 years ago

Last modified 7 years ago

ffado-dbus-server: SIGTERM breaks persistence of mixer/router changes

Reported by: nils Assigned to: arnonym
Priority: major Milestone:
Component: ffado-mixer Version: FFADO SVN (trunk)
Keywords: Cc:
The device the bug applies to:

Description

Hi,

if the ffado-dbus-server process is killed with SIGTERM (the default signal used in the kill, killall, pkill commands which I use e.g. when playing around with code changes), changes in routing or the hardware mixer levels are not made persistent on my Focusrite Saffire Pro40 devices (i.e. if I switch them off, then on again, the previous settings are back again). Persistence works with SIGINT, which is what e.g. gets sent to the process if started manually, then terminated with Ctrl+C.

I'll attach a two-liner patch which fixes this issue for me, it simply registers the signal handler for SIGTERM as well.

Attachments

0001-dbus-server-clean-up-on-SIGTERM-as-well.patch (1.0 kB) - added by nils on 05/12/13 09:45:58.
patch registering signal handler for SIGTERM as well

Change History

05/12/13 09:45:58 changed by nils

  • attachment 0001-dbus-server-clean-up-on-SIGTERM-as-well.patch added.

patch registering signal handler for SIGTERM as well

05/12/13 16:17:01 changed by jwoithe

  • status changed from new to closed.
  • resolution set to fixed.

This seems reasonable to me. Applied in r2316. Thanks.

In the (hopefully rare) case where ffado-dbus-server hangs this does mean that one can't use the TERM signal to kill it. However, there's still KILL, and such occasions should be confined to fault conditions which would need to be investigated and fixed anyway. I therefore see no problem with this.