• Hans Verkuil's avatar
    media: vim2m: only cancel work if it is for right context · 240809ef
    Hans Verkuil authored
    cancel_delayed_work_sync() was called for any queue, but it should only
    be called for the queue that is associated with the currently running job.
    
    Otherwise, if two filehandles are streaming at the same time, then closing the
    first will cancel the work which might still be running for a job from the
    second filehandle. As a result the second filehandle will never be able to
    finish the job and an attempt to stop streaming on that second filehandle will
    stall.
    
    Fixes: 52117be6 ("media: vim2m: use cancel_delayed_work_sync instead of flush_schedule_work")
    Signed-off-by: default avatarHans Verkuil <hverkuil-cisco@xs4all.nl>
    Cc: <stable@vger.kernel.org>      # for v4.20 and up
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+samsung@kernel.org>
    240809ef
vim2m.c 27.4 KB