diff options
author | Jakob Bornecrantz <jakob@vmware.com> | 2012-08-16 04:29:03 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-08-23 19:38:40 -0400 |
commit | 7c4eaca4162d0b5ad4fb39f974d7ffd71b9daa09 (patch) | |
tree | 1b1851a45b209cdc24489866326bc987c0c22315 | |
parent | 22f5d115a2b087c977128f84ee557ad71530330e (diff) |
drm: Check for invalid cursor flags
Signed-off-by: Jakob Bornecrantz <jakob@vmware.com>
Cc: stable@vger.kernel.org
Signed-off-by: Dave Airlie <airlied@redhat.com>
-rw-r--r-- | drivers/gpu/drm/drm_crtc.c | 2 | ||||
-rw-r--r-- | include/drm/drm_mode.h | 5 |
2 files changed, 4 insertions, 3 deletions
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c index 08a7aa722d6b..6fbfc244748f 100644 --- a/drivers/gpu/drm/drm_crtc.c +++ b/drivers/gpu/drm/drm_crtc.c | |||
@@ -1981,7 +1981,7 @@ int drm_mode_cursor_ioctl(struct drm_device *dev, | |||
1981 | if (!drm_core_check_feature(dev, DRIVER_MODESET)) | 1981 | if (!drm_core_check_feature(dev, DRIVER_MODESET)) |
1982 | return -EINVAL; | 1982 | return -EINVAL; |
1983 | 1983 | ||
1984 | if (!req->flags) | 1984 | if (!req->flags || (~DRM_MODE_CURSOR_FLAGS & req->flags)) |
1985 | return -EINVAL; | 1985 | return -EINVAL; |
1986 | 1986 | ||
1987 | mutex_lock(&dev->mode_config.mutex); | 1987 | mutex_lock(&dev->mode_config.mutex); |
diff --git a/include/drm/drm_mode.h b/include/drm/drm_mode.h index 5581980b14f6..3d6301b6ec16 100644 --- a/include/drm/drm_mode.h +++ b/include/drm/drm_mode.h | |||
@@ -359,8 +359,9 @@ struct drm_mode_mode_cmd { | |||
359 | struct drm_mode_modeinfo mode; | 359 | struct drm_mode_modeinfo mode; |
360 | }; | 360 | }; |
361 | 361 | ||
362 | #define DRM_MODE_CURSOR_BO (1<<0) | 362 | #define DRM_MODE_CURSOR_BO 0x01 |
363 | #define DRM_MODE_CURSOR_MOVE (1<<1) | 363 | #define DRM_MODE_CURSOR_MOVE 0x02 |
364 | #define DRM_MODE_CURSOR_FLAGS 0x03 | ||
364 | 365 | ||
365 | /* | 366 | /* |
366 | * depending on the value in flags different members are used. | 367 | * depending on the value in flags different members are used. |