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_get_txwi (Closes: #636531)
|
||||
* [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
|
||||
|
||||
|
|
|
@ -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_get_txwi.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