On 11 November 2014 21:53, Ville Sundell <ville.sundell at nomovok.com> wrote: > Thank you very much for clarification :) > > Is there an anomaly somewhere: when sink_set_state() gets called by > pa_sink_suspend(), like this: > > sink_set_state(s, pa_sink_used_by(s) ? PA_SINK_RUNNING : PA_SINK_IDLE); > > sink_set_state() invokes s->set_state like this: > > if ((ret = s->set_state(s, state)) < 0) > > And it seems to call sink_input_set_state() according to my debug messages > (placed before and after s->set_state() invocation, and inside of > sink_input_set_state()). I suppose this is wrong because of differences > between PA_SINK_INPUT_* and PA_SINK_*? Or is this permitted? This might be because of something one of your policy modules is doing (we emit a PA_CORE_HOOK_SINK_STATE_CHANGED after setting state), but it's hard to say specifically without a backtrace. -- Arun