uvcvideo: Fix crash when linking entities (Closes: #637740)
svn path=/dists/sid/linux-2.6/; revision=18056
This commit is contained in:
parent
6b76054200
commit
4dd557d027
|
@ -21,6 +21,7 @@ linux-2.6 (3.0.0-4) UNRELEASED; urgency=low
|
||||||
* rt2x00: fix crash in rt2800usb_write_tx_desc
|
* rt2x00: fix crash in rt2800usb_write_tx_desc
|
||||||
* rt2x00: fix crash in rt2800usb_get_txwi (Closes: #636531)
|
* rt2x00: fix crash in rt2800usb_get_txwi (Closes: #636531)
|
||||||
* [sparc] Only Panther cheetah+ chips have POPC (Closes: #639949)
|
* [sparc] Only Panther cheetah+ chips have POPC (Closes: #639949)
|
||||||
|
* uvcvideo: Fix crash when linking entities (Closes: #637740)
|
||||||
|
|
||||||
-- Ben Hutchings <ben@decadent.org.uk> Sun, 28 Aug 2011 17:07:47 +0100
|
-- Ben Hutchings <ben@decadent.org.uk> Sun, 28 Aug 2011 17:07:47 +0100
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
From: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
||||||
|
Date: Wed, 7 Sep 2011 00:29:08 +0200
|
||||||
|
Subject: Bug#637740: [PATCH] uvcvideo: Fix crash when linking entities
|
||||||
|
|
||||||
|
The uvc_mc_register_entity() function wrongfully selects the
|
||||||
|
media_entity associated with a UVC entity when creating links. This
|
||||||
|
results in access to uninitialized media_entity structures and can hit a
|
||||||
|
BUG_ON statement in media_entity_create_link(). Fix it.
|
||||||
|
|
||||||
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
||||||
|
---
|
||||||
|
drivers/media/video/uvc/uvc_entity.c | 2 +-
|
||||||
|
1 files changed, 1 insertions(+), 1 deletions(-)
|
||||||
|
|
||||||
|
This patch should fix a v3.0 regression that results in a kernel crash as
|
||||||
|
reported in http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=637740 and
|
||||||
|
https://bugzilla.redhat.com/show_bug.cgi?id=735437.
|
||||||
|
|
||||||
|
Test results will be welcome.
|
||||||
|
|
||||||
|
diff --git a/drivers/media/video/uvc/uvc_entity.c b/drivers/media/video/uvc/uvc_entity.c
|
||||||
|
index 48fea37..29e2399 100644
|
||||||
|
--- a/drivers/media/video/uvc/uvc_entity.c
|
||||||
|
+++ b/drivers/media/video/uvc/uvc_entity.c
|
||||||
|
@@ -49,7 +49,7 @@ static int uvc_mc_register_entity(struct uvc_video_chain *chain,
|
||||||
|
if (remote == NULL)
|
||||||
|
return -EINVAL;
|
||||||
|
|
||||||
|
- source = (UVC_ENTITY_TYPE(remote) != UVC_TT_STREAMING)
|
||||||
|
+ source = (UVC_ENTITY_TYPE(remote) == UVC_TT_STREAMING)
|
||||||
|
? (remote->vdev ? &remote->vdev->entity : NULL)
|
||||||
|
: &remote->subdev.entity;
|
||||||
|
if (source == NULL)
|
|
@ -12,3 +12,4 @@
|
||||||
+ bugfix/all/rt2x00-fix-crash-in-rt2800usb_write_tx_desc.patch
|
+ bugfix/all/rt2x00-fix-crash-in-rt2800usb_write_tx_desc.patch
|
||||||
+ bugfix/all/rt2x00-fix-crash-in-rt2800usb_get_txwi.patch
|
+ bugfix/all/rt2x00-fix-crash-in-rt2800usb_get_txwi.patch
|
||||||
+ bugfix/sparc/sparc64-only-panther-cheetah-chips-have-popc.patch
|
+ bugfix/sparc/sparc64-only-panther-cheetah-chips-have-popc.patch
|
||||||
|
+ bugfix/all/uvcvideo-Fix-crash-when-linking-entities.patch
|
||||||
|
|
Loading…
Reference in New Issue