On Thu, 2019-04-25 at 15:35 -0300, Ezequiel Garcia wrote: > There isn't any reason to run the mem2mem job on a separate worker, > because the mem2mem framework guarantees that device_run will never > run in interrupt context. The purpose of the workqueue is to serialize BIT processor commands, currently the PIC_RUN commands issued by the mem2mem framework (as well as SEQ_INIT, SET_FRAME_BUF, and ENCODE_HEADER) against the SEQ_END command issued directly from the STREAMOFF ioctl. Further, to fully support the stateful decoder API we'll have to move SEQ_INIT out of the mem2mem device_run as well, since that should be called on queued OUTPUT buffers before the CAPTURE side is even streaming. regards Philipp