Re: [PATCH 4/4] [media] solo6x10: don't turn off/on encoder interrupt in processing loop

From: Hans Verkuil
Date: Mon Nov 03 2014 - 10:16:07 EST


Hi Andrey,

On 10/29/2014 05:03 PM, Andrey Utkin wrote:
> 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.

I don't understand what you mean with 'interrupt handler can execute in
different thread'. Can you elaborate?

Note that I do think that this change makes sense, but I do like to have a
better explanation.

Regards,

Hans

> 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();
> }
>
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/