The used approach actually cannot prevent new encoder interrupt to appear, because interrupt handler can execute in different thread, and in current implementation there is still race condition regarding this. Also from practice the code with this change seems to work as stable as before. Signed-off-by: Andrey Utkin <andrey.krieger.utkin@xxxxxxxxx> --- drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c b/drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c index b9b61b9..30e09d9 100644 --- a/drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c +++ b/drivers/media/pci/solo6x10/solo6x10-v4l2-enc.c @@ -703,9 +703,7 @@ static int solo_ring_thread(void *data) if (timeout == -ERESTARTSYS || kthread_should_stop()) break; - solo_irq_off(solo_dev, SOLO_IRQ_ENCODER); solo_handle_ring(solo_dev); - solo_irq_on(solo_dev, SOLO_IRQ_ENCODER); try_to_freeze(); } -- 1.8.5.5 -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html