[PATCH] [160/275] drm: fix unsigned vs signed comparison issue in modeset ctl ioctl.

From: Andi Kleen
Date: Wed Mar 30 2011 - 17:37:08 EST


2.6.35-longterm review patch. If anyone has any objections, please let me know.

------------------
From: Dave Airlie <airlied@xxxxxxxxxx>

commit 1922756124ddd53846877416d92ba4a802bc658f upstream.

This fixes CVE-2011-1013.

Reported-by: Matthiew Herrb (OpenBSD X.org team)
Signed-off-by: Dave Airlie <airlied@xxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>
Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>

---
drivers/gpu/drm/drm_irq.c | 3 ++-
include/drm/drmP.h | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)

Index: linux-2.6.35.y/drivers/gpu/drm/drm_irq.c
===================================================================
--- linux-2.6.35.y.orig/drivers/gpu/drm/drm_irq.c 2011-03-29 22:51:01.380687839 -0700
+++ linux-2.6.35.y/drivers/gpu/drm/drm_irq.c 2011-03-29 23:03:01.580259734 -0700
@@ -545,7 +545,8 @@
struct drm_file *file_priv)
{
struct drm_modeset_ctl *modeset = data;
- int crtc, ret = 0;
+ int ret = 0;
+ unsigned int crtc;

/* If drm_vblank_init() hasn't been called yet, just no-op */
if (!dev->num_crtcs)
Index: linux-2.6.35.y/include/drm/drmP.h
===================================================================
--- linux-2.6.35.y.orig/include/drm/drmP.h 2011-03-29 22:51:01.380687839 -0700
+++ linux-2.6.35.y/include/drm/drmP.h 2011-03-29 23:03:01.581259709 -0700
@@ -1021,7 +1021,7 @@
struct pci_controller *hose;
#endif
struct drm_sg_mem *sg; /**< Scatter gather memory */
- int num_crtcs; /**< Number of CRTCs on this device */
+ unsigned int num_crtcs; /**< Number of CRTCs on this device */
void *dev_private; /**< device private data */
void *mm_private;
struct address_space *dev_mapping;
--
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/