diff options
author | Jakob Bornecrantz <jakob@vmware.com> | 2012-08-16 08:29:03 +0000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2012-08-24 09:38:40 +1000 |
commit | 7c4eaca4162d0b5ad4fb39f974d7ffd71b9daa09 (patch) | |
tree | 1b1851a45b209cdc24489866326bc987c0c22315 | |
parent | 22f5d115a2b087c977128f84ee557ad71530330e (diff) | |
download | op-kernel-dev-7c4eaca4162d0b5ad4fb39f974d7ffd71b9daa09.zip op-kernel-dev-7c4eaca4162d0b5ad4fb39f974d7ffd71b9daa09.tar.gz |
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 08a7aa7..6fbfc24 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, if (!drm_core_check_feature(dev, DRIVER_MODESET)) return -EINVAL; - if (!req->flags) + if (!req->flags || (~DRM_MODE_CURSOR_FLAGS & req->flags)) return -EINVAL; mutex_lock(&dev->mode_config.mutex); diff --git a/include/drm/drm_mode.h b/include/drm/drm_mode.h index 5581980..3d6301b 100644 --- a/include/drm/drm_mode.h +++ b/include/drm/drm_mode.h @@ -359,8 +359,9 @@ struct drm_mode_mode_cmd { struct drm_mode_modeinfo mode; }; -#define DRM_MODE_CURSOR_BO (1<<0) -#define DRM_MODE_CURSOR_MOVE (1<<1) +#define DRM_MODE_CURSOR_BO 0x01 +#define DRM_MODE_CURSOR_MOVE 0x02 +#define DRM_MODE_CURSOR_FLAGS 0x03 /* * depending on the value in flags different members are used. |