Bug: Jack crashes and consumes 100% CPU after resume from suspend
Suggestion:
FFADO was not set up to deal cleanly with suspend and resume, mainly
because the nature of Firewire interfaces makes this a very difficult
problem to solve. In particular, the device itself exists outside of
the suspend infrastructure so FFADO has no guarantee about the
device's status when a resume occurs. In fact, because of the way
firewire audio devices work, the streaming would need to be formally
shut down before suspend and restarted on resume. Jackd's design
does not lend itself to doing this (although it could perhaps be
achieved with sufficient time and effort).
Interestingly, a follow up comment in 2012 suggested that jack1 dealt
with suspend-resume better than jack2.
A partial solution to the issue of shutting jackd down before suspend
may be one of the jack session managers which have since been
developed. At this stage it is unlikely that FFADO will gain formal
support for suspend/resume unless someone steps up to write the code.
I am unsure how many people would make use of such a feature if it
were to be implemented.
From FFADO maintainer:
Bug: Jack crashes and consumes 100% CPU after resume from suspend
Suggestion:
FFADO was not set up to deal cleanly with suspend and resume, mainly
because the nature of Firewire interfaces makes this a very difficult
problem to solve. In particular, the device itself exists outside of
the suspend infrastructure so FFADO has no guarantee about the
device's status when a resume occurs. In fact, because of the way
firewire audio devices work, the streaming would need to be formally
shut down before suspend and restarted on resume. Jackd's design
does not lend itself to doing this (although it could perhaps be
achieved with sufficient time and effort).
with suspend-resume better than jack2.
A partial solution to the issue of shutting jackd down before suspend
may be one of the jack session managers which have since been
developed. At this stage it is unlikely that FFADO will gain formal
support for suspend/resume unless someone steps up to write the code.
I am unsure how many people would make use of such a feature if it
were to be implemented.