]> git.karo-electronics.de Git - karo-tx-linux.git/commit
[media] usb: gadget/uvc: Remove non-required locking from 'uvc_queue_next_buffer...
authorBhupesh Sharma <bhupesh.sharma@st.com>
Thu, 22 Mar 2012 03:50:37 +0000 (00:50 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Tue, 10 Apr 2012 18:46:02 +0000 (15:46 -0300)
commit95faf82bd3ea607f8e1ca78930c49b71078266e6
tree325a5529c3c5b4d46dcbaecb3800f844321918ca
parent7cfce77d779f43299c1cfeddd72462fed596c168
[media] usb: gadget/uvc: Remove non-required locking from 'uvc_queue_next_buffer' routine

This patch removes the non-required spinlock acquire/release calls on
'queue_irqlock' from 'uvc_queue_next_buffer' routine.

This routine is called from 'video->encode' function (which translates to either
'uvc_video_encode_bulk' or 'uvc_video_encode_isoc') in 'uvc_video.c'.
As, the 'video->encode' routines are called with 'queue_irqlock' already held,
so acquiring a 'queue_irqlock' again in 'uvc_queue_next_buffer' routine causes
a spin lock recursion.

Signed-off-by: Bhupesh Sharma <bhupesh.sharma@st.com>
Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/usb/gadget/uvc_queue.c