diff options
author | Jonas Bonn <jonas@southpole.se> | 2009-04-24 15:05:02 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2009-04-24 15:05:02 +1000 |
commit | 59738d5c974d81b566cb53c203f5db268b7b3545 (patch) | |
tree | 7322de299e0a3e3335e8ed0d96fa3b1a63c90dfc /drivers/gpu | |
parent | c964b129425c98cb37da365e772bdbe5281f3a05 (diff) | |
download | blackbird-op-linux-59738d5c974d81b566cb53c203f5db268b7b3545.tar.gz blackbird-op-linux-59738d5c974d81b566cb53c203f5db268b7b3545.zip |
drm: add control node checks missing from kms merge
This line that checks the DRM_CONTROL_ALLOW flag was missed from the KMS
merge. Re-add the check on the IOCTL, as this is currently the only use of
this flag.
Signed-off-by: Jonas Bonn <jonas@southpole.se>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/drm_drv.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c index c4ada8b6295b..f01def16a669 100644 --- a/drivers/gpu/drm/drm_drv.c +++ b/drivers/gpu/drm/drm_drv.c @@ -456,7 +456,8 @@ int drm_ioctl(struct inode *inode, struct file *filp, retcode = -EINVAL; } else if (((ioctl->flags & DRM_ROOT_ONLY) && !capable(CAP_SYS_ADMIN)) || ((ioctl->flags & DRM_AUTH) && !file_priv->authenticated) || - ((ioctl->flags & DRM_MASTER) && !file_priv->is_master)) { + ((ioctl->flags & DRM_MASTER) && !file_priv->is_master) || + (!(ioctl->flags & DRM_CONTROL_ALLOW) && (file_priv->minor->type == DRM_MINOR_CONTROL))) { retcode = -EACCES; } else { if (cmd & (IOC_IN | IOC_OUT)) { |