On Sat 17 August 2013 18:25:04 Ming Lei wrote:
> Complete() will be run with interrupt enabled, so change to
> spin_lock_irqsave().
> 
> Cc: Mauro Carvalho Chehab <[email protected]>
> Cc: [email protected]
> Signed-off-by: Ming Lei <[email protected]>

Acked-by: Hans Verkuil <[email protected]>

Regards,

        Hans

> ---
>  drivers/media/usb/sn9c102/sn9c102_core.c |    7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/media/usb/sn9c102/sn9c102_core.c 
> b/drivers/media/usb/sn9c102/sn9c102_core.c
> index 2cb44de..33dc595 100644
> --- a/drivers/media/usb/sn9c102/sn9c102_core.c
> +++ b/drivers/media/usb/sn9c102/sn9c102_core.c
> @@ -784,12 +784,14 @@ end_of_frame:
>                                     cam->sensor.pix_format.pixelformat ==
>                                     V4L2_PIX_FMT_JPEG) && eof)) {
>                                       u32 b;
> +                                     unsigned long flags;
>  
>                                       b = (*f)->buf.bytesused;
>                                       (*f)->state = F_DONE;
>                                       (*f)->buf.sequence= ++cam->frame_count;
>  
> -                                     spin_lock(&cam->queue_lock);
> +                                     spin_lock_irqsave(&cam->queue_lock,
> +                                                       flags);
>                                       list_move_tail(&(*f)->frame,
>                                                      &cam->outqueue);
>                                       if (!list_empty(&cam->inqueue))
> @@ -799,7 +801,8 @@ end_of_frame:
>                                                       frame );
>                                       else
>                                               (*f) = NULL;
> -                                     spin_unlock(&cam->queue_lock);
> +                                     spin_unlock_irqrestore(&cam->queue_lock,
> +                                                            flags);
>  
>                                       memcpy(cam->sysfs.frame_header,
>                                              cam->sof.header, soflen);
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to