From: Dave Airlie Date: Fri, 28 Jun 2013 03:27:40 +0000 (+1000) Subject: drm/qxl: add missing access check for execbuffer ioctl X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=18097b91aaff215e843f04b84ec2c686270bb55f;p=sagit-ice-cold%2Fkernel_xiaomi_msm8998.git drm/qxl: add missing access check for execbuffer ioctl Reported-by: Mathieu Desnoyers Signed-off-by: Dave Airlie --- diff --git a/drivers/gpu/drm/qxl/qxl_ioctl.c b/drivers/gpu/drm/qxl/qxl_ioctl.c index a4b71b25fa53..a30f29425c21 100644 --- a/drivers/gpu/drm/qxl/qxl_ioctl.c +++ b/drivers/gpu/drm/qxl/qxl_ioctl.c @@ -171,6 +171,11 @@ static int qxl_execbuffer_ioctl(struct drm_device *dev, void *data, if (user_cmd.command_size > PAGE_SIZE - sizeof(union qxl_release_info)) return -EINVAL; + if (!access_ok(VERIFY_READ, + (void *)(unsigned long)user_cmd.command, + user_cmd.command_size)) + return -EFAULT; + ret = qxl_alloc_release_reserved(qdev, sizeof(union qxl_release_info) + user_cmd.command_size,