Message ID | 20180420065159.4531-4-daniel.vetter@ffwll.ch (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Fri, Apr 20, 2018 at 08:51:59AM +0200, Daniel Vetter wrote: > With the ioctl and driver prep done, we can remove everything else. > > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> > Cc: Gustavo Padovan <gustavo@padovan.org> > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > Cc: Sean Paul <seanpaul@chromium.org> > Cc: David Airlie <airlied@linux.ie> Sorry, I missed this on my first pass. Reviewed-by: Sean Paul <seanpaul@chromium.org> > --- > drivers/gpu/drm/drm_drv.c | 10 ---------- > drivers/gpu/drm/drm_framebuffer.c | 3 +-- > drivers/gpu/drm/drm_ioctl.c | 8 +------- > drivers/gpu/drm/drm_sysfs.c | 4 +--- > include/drm/drm_device.h | 1 - > include/drm/drm_file.h | 13 ------------- > include/drm/drm_ioctl.h | 7 ------- > 7 files changed, 3 insertions(+), 43 deletions(-) > > diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c > index 32a83b41ab61..f6910ebe4d0e 100644 > --- a/drivers/gpu/drm/drm_drv.c > +++ b/drivers/gpu/drm/drm_drv.c > @@ -99,8 +99,6 @@ static struct drm_minor **drm_minor_get_slot(struct drm_device *dev, > return &dev->primary; > case DRM_MINOR_RENDER: > return &dev->render; > - case DRM_MINOR_CONTROL: > - return &dev->control; > default: > BUG(); > } > @@ -567,7 +565,6 @@ int drm_dev_init(struct drm_device *dev, > err_minors: > drm_minor_free(dev, DRM_MINOR_PRIMARY); > drm_minor_free(dev, DRM_MINOR_RENDER); > - drm_minor_free(dev, DRM_MINOR_CONTROL); > drm_fs_inode_free(dev->anon_inode); > err_free: > mutex_destroy(&dev->master_mutex); > @@ -603,7 +600,6 @@ void drm_dev_fini(struct drm_device *dev) > > drm_minor_free(dev, DRM_MINOR_PRIMARY); > drm_minor_free(dev, DRM_MINOR_RENDER); > - drm_minor_free(dev, DRM_MINOR_CONTROL); > > mutex_destroy(&dev->master_mutex); > mutex_destroy(&dev->ctxlist_mutex); > @@ -796,10 +792,6 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags) > > mutex_lock(&drm_global_mutex); > > - ret = drm_minor_register(dev, DRM_MINOR_CONTROL); > - if (ret) > - goto err_minors; > - > ret = drm_minor_register(dev, DRM_MINOR_RENDER); > if (ret) > goto err_minors; > @@ -837,7 +829,6 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags) > remove_compat_control_link(dev); > drm_minor_unregister(dev, DRM_MINOR_PRIMARY); > drm_minor_unregister(dev, DRM_MINOR_RENDER); > - drm_minor_unregister(dev, DRM_MINOR_CONTROL); > out_unlock: > mutex_unlock(&drm_global_mutex); > return ret; > @@ -882,7 +873,6 @@ void drm_dev_unregister(struct drm_device *dev) > remove_compat_control_link(dev); > drm_minor_unregister(dev, DRM_MINOR_PRIMARY); > drm_minor_unregister(dev, DRM_MINOR_RENDER); > - drm_minor_unregister(dev, DRM_MINOR_CONTROL); > } > EXPORT_SYMBOL(drm_dev_unregister); > > diff --git a/drivers/gpu/drm/drm_framebuffer.c b/drivers/gpu/drm/drm_framebuffer.c > index 8c4d32adcc17..bfedceff87bb 100644 > --- a/drivers/gpu/drm/drm_framebuffer.c > +++ b/drivers/gpu/drm/drm_framebuffer.c > @@ -484,8 +484,7 @@ int drm_mode_getfb(struct drm_device *dev, > * backwards-compatibility reasons, we cannot make GET_FB() privileged, > * so just return an invalid handle for non-masters. > */ > - if (!drm_is_current_master(file_priv) && !capable(CAP_SYS_ADMIN) && > - !drm_is_control_client(file_priv)) { > + if (!drm_is_current_master(file_priv) && !capable(CAP_SYS_ADMIN)) { > r->handle = 0; > ret = 0; > goto out; > diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c > index 920279666cae..01b61c12d635 100644 > --- a/drivers/gpu/drm/drm_ioctl.c > +++ b/drivers/gpu/drm/drm_ioctl.c > @@ -510,13 +510,7 @@ int drm_ioctl_permit(u32 flags, struct drm_file *file_priv) > > /* MASTER is only for master or control clients */ > if (unlikely((flags & DRM_MASTER) && > - !drm_is_current_master(file_priv) && > - !drm_is_control_client(file_priv))) > - return -EACCES; > - > - /* Control clients must be explicitly allowed */ > - if (unlikely(!(flags & DRM_CONTROL_ALLOW) && > - drm_is_control_client(file_priv))) > + !drm_is_current_master(file_priv))) > return -EACCES; > > /* Render clients must be explicitly allowed */ > diff --git a/drivers/gpu/drm/drm_sysfs.c b/drivers/gpu/drm/drm_sysfs.c > index 1c5b5ce1fd7f..b3c1daad1169 100644 > --- a/drivers/gpu/drm/drm_sysfs.c > +++ b/drivers/gpu/drm/drm_sysfs.c > @@ -331,9 +331,7 @@ struct device *drm_sysfs_minor_alloc(struct drm_minor *minor) > struct device *kdev; > int r; > > - if (minor->type == DRM_MINOR_CONTROL) > - minor_str = "controlD%d"; > - else if (minor->type == DRM_MINOR_RENDER) > + if (minor->type == DRM_MINOR_RENDER) > minor_str = "renderD%d"; > else > minor_str = "card%d"; > diff --git a/include/drm/drm_device.h b/include/drm/drm_device.h > index 3a0eac2885b7..858ba19a3e29 100644 > --- a/include/drm/drm_device.h > +++ b/include/drm/drm_device.h > @@ -38,7 +38,6 @@ struct drm_device { > struct device *dev; /**< Device structure of bus-device */ > struct drm_driver *driver; /**< DRM driver managing the device */ > void *dev_private; /**< DRM driver private data */ > - struct drm_minor *control; /**< Control node */ > struct drm_minor *primary; /**< Primary node */ > struct drm_minor *render; /**< Render node */ > bool registered; > diff --git a/include/drm/drm_file.h b/include/drm/drm_file.h > index 5176c3797680..99ab50cbab00 100644 > --- a/include/drm/drm_file.h > +++ b/include/drm/drm_file.h > @@ -49,7 +49,6 @@ struct device; > > enum drm_minor_type { > DRM_MINOR_PRIMARY, > - DRM_MINOR_CONTROL, > DRM_MINOR_RENDER, > }; > > @@ -348,18 +347,6 @@ static inline bool drm_is_render_client(const struct drm_file *file_priv) > return file_priv->minor->type == DRM_MINOR_RENDER; > } > > -/** > - * drm_is_control_client - is this an open file of the control node > - * @file_priv: DRM file > - * > - * Control nodes are deprecated and in the process of getting removed from the > - * DRM userspace API. Do not ever use! > - */ > -static inline bool drm_is_control_client(const struct drm_file *file_priv) > -{ > - return file_priv->minor->type == DRM_MINOR_CONTROL; > -} > - > int drm_open(struct inode *inode, struct file *filp); > ssize_t drm_read(struct file *filp, char __user *buffer, > size_t count, loff_t *offset); > diff --git a/include/drm/drm_ioctl.h b/include/drm/drm_ioctl.h > index add42809642a..fafb6f592c4b 100644 > --- a/include/drm/drm_ioctl.h > +++ b/include/drm/drm_ioctl.h > @@ -108,13 +108,6 @@ enum drm_ioctl_flags { > * This is equivalent to callers with the SYSADMIN capability. > */ > DRM_ROOT_ONLY = BIT(2), > - /** > - * @DRM_CONTROL_ALLOW: > - * > - * Deprecated, do not use. Control nodes are in the process of getting > - * removed. > - */ > - DRM_CONTROL_ALLOW = BIT(3), > /** > * @DRM_UNLOCKED: > * > -- > 2.16.2 >
On Wed, May 02, 2018 at 04:10:45PM -0400, Sean Paul wrote: > On Fri, Apr 20, 2018 at 08:51:59AM +0200, Daniel Vetter wrote: > > With the ioctl and driver prep done, we can remove everything else. > > > > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> > > Cc: Gustavo Padovan <gustavo@padovan.org> > > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > > Cc: Sean Paul <seanpaul@chromium.org> > > Cc: David Airlie <airlied@linux.ie> > > Sorry, I missed this on my first pass. > > Reviewed-by: Sean Paul <seanpaul@chromium.org> Thanks for the review, pulled all 5 patches into drm-misc-next. -Daniel > > > --- > > drivers/gpu/drm/drm_drv.c | 10 ---------- > > drivers/gpu/drm/drm_framebuffer.c | 3 +-- > > drivers/gpu/drm/drm_ioctl.c | 8 +------- > > drivers/gpu/drm/drm_sysfs.c | 4 +--- > > include/drm/drm_device.h | 1 - > > include/drm/drm_file.h | 13 ------------- > > include/drm/drm_ioctl.h | 7 ------- > > 7 files changed, 3 insertions(+), 43 deletions(-) > > > > diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c > > index 32a83b41ab61..f6910ebe4d0e 100644 > > --- a/drivers/gpu/drm/drm_drv.c > > +++ b/drivers/gpu/drm/drm_drv.c > > @@ -99,8 +99,6 @@ static struct drm_minor **drm_minor_get_slot(struct drm_device *dev, > > return &dev->primary; > > case DRM_MINOR_RENDER: > > return &dev->render; > > - case DRM_MINOR_CONTROL: > > - return &dev->control; > > default: > > BUG(); > > } > > @@ -567,7 +565,6 @@ int drm_dev_init(struct drm_device *dev, > > err_minors: > > drm_minor_free(dev, DRM_MINOR_PRIMARY); > > drm_minor_free(dev, DRM_MINOR_RENDER); > > - drm_minor_free(dev, DRM_MINOR_CONTROL); > > drm_fs_inode_free(dev->anon_inode); > > err_free: > > mutex_destroy(&dev->master_mutex); > > @@ -603,7 +600,6 @@ void drm_dev_fini(struct drm_device *dev) > > > > drm_minor_free(dev, DRM_MINOR_PRIMARY); > > drm_minor_free(dev, DRM_MINOR_RENDER); > > - drm_minor_free(dev, DRM_MINOR_CONTROL); > > > > mutex_destroy(&dev->master_mutex); > > mutex_destroy(&dev->ctxlist_mutex); > > @@ -796,10 +792,6 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags) > > > > mutex_lock(&drm_global_mutex); > > > > - ret = drm_minor_register(dev, DRM_MINOR_CONTROL); > > - if (ret) > > - goto err_minors; > > - > > ret = drm_minor_register(dev, DRM_MINOR_RENDER); > > if (ret) > > goto err_minors; > > @@ -837,7 +829,6 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags) > > remove_compat_control_link(dev); > > drm_minor_unregister(dev, DRM_MINOR_PRIMARY); > > drm_minor_unregister(dev, DRM_MINOR_RENDER); > > - drm_minor_unregister(dev, DRM_MINOR_CONTROL); > > out_unlock: > > mutex_unlock(&drm_global_mutex); > > return ret; > > @@ -882,7 +873,6 @@ void drm_dev_unregister(struct drm_device *dev) > > remove_compat_control_link(dev); > > drm_minor_unregister(dev, DRM_MINOR_PRIMARY); > > drm_minor_unregister(dev, DRM_MINOR_RENDER); > > - drm_minor_unregister(dev, DRM_MINOR_CONTROL); > > } > > EXPORT_SYMBOL(drm_dev_unregister); > > > > diff --git a/drivers/gpu/drm/drm_framebuffer.c b/drivers/gpu/drm/drm_framebuffer.c > > index 8c4d32adcc17..bfedceff87bb 100644 > > --- a/drivers/gpu/drm/drm_framebuffer.c > > +++ b/drivers/gpu/drm/drm_framebuffer.c > > @@ -484,8 +484,7 @@ int drm_mode_getfb(struct drm_device *dev, > > * backwards-compatibility reasons, we cannot make GET_FB() privileged, > > * so just return an invalid handle for non-masters. > > */ > > - if (!drm_is_current_master(file_priv) && !capable(CAP_SYS_ADMIN) && > > - !drm_is_control_client(file_priv)) { > > + if (!drm_is_current_master(file_priv) && !capable(CAP_SYS_ADMIN)) { > > r->handle = 0; > > ret = 0; > > goto out; > > diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c > > index 920279666cae..01b61c12d635 100644 > > --- a/drivers/gpu/drm/drm_ioctl.c > > +++ b/drivers/gpu/drm/drm_ioctl.c > > @@ -510,13 +510,7 @@ int drm_ioctl_permit(u32 flags, struct drm_file *file_priv) > > > > /* MASTER is only for master or control clients */ > > if (unlikely((flags & DRM_MASTER) && > > - !drm_is_current_master(file_priv) && > > - !drm_is_control_client(file_priv))) > > - return -EACCES; > > - > > - /* Control clients must be explicitly allowed */ > > - if (unlikely(!(flags & DRM_CONTROL_ALLOW) && > > - drm_is_control_client(file_priv))) > > + !drm_is_current_master(file_priv))) > > return -EACCES; > > > > /* Render clients must be explicitly allowed */ > > diff --git a/drivers/gpu/drm/drm_sysfs.c b/drivers/gpu/drm/drm_sysfs.c > > index 1c5b5ce1fd7f..b3c1daad1169 100644 > > --- a/drivers/gpu/drm/drm_sysfs.c > > +++ b/drivers/gpu/drm/drm_sysfs.c > > @@ -331,9 +331,7 @@ struct device *drm_sysfs_minor_alloc(struct drm_minor *minor) > > struct device *kdev; > > int r; > > > > - if (minor->type == DRM_MINOR_CONTROL) > > - minor_str = "controlD%d"; > > - else if (minor->type == DRM_MINOR_RENDER) > > + if (minor->type == DRM_MINOR_RENDER) > > minor_str = "renderD%d"; > > else > > minor_str = "card%d"; > > diff --git a/include/drm/drm_device.h b/include/drm/drm_device.h > > index 3a0eac2885b7..858ba19a3e29 100644 > > --- a/include/drm/drm_device.h > > +++ b/include/drm/drm_device.h > > @@ -38,7 +38,6 @@ struct drm_device { > > struct device *dev; /**< Device structure of bus-device */ > > struct drm_driver *driver; /**< DRM driver managing the device */ > > void *dev_private; /**< DRM driver private data */ > > - struct drm_minor *control; /**< Control node */ > > struct drm_minor *primary; /**< Primary node */ > > struct drm_minor *render; /**< Render node */ > > bool registered; > > diff --git a/include/drm/drm_file.h b/include/drm/drm_file.h > > index 5176c3797680..99ab50cbab00 100644 > > --- a/include/drm/drm_file.h > > +++ b/include/drm/drm_file.h > > @@ -49,7 +49,6 @@ struct device; > > > > enum drm_minor_type { > > DRM_MINOR_PRIMARY, > > - DRM_MINOR_CONTROL, > > DRM_MINOR_RENDER, > > }; > > > > @@ -348,18 +347,6 @@ static inline bool drm_is_render_client(const struct drm_file *file_priv) > > return file_priv->minor->type == DRM_MINOR_RENDER; > > } > > > > -/** > > - * drm_is_control_client - is this an open file of the control node > > - * @file_priv: DRM file > > - * > > - * Control nodes are deprecated and in the process of getting removed from the > > - * DRM userspace API. Do not ever use! > > - */ > > -static inline bool drm_is_control_client(const struct drm_file *file_priv) > > -{ > > - return file_priv->minor->type == DRM_MINOR_CONTROL; > > -} > > - > > int drm_open(struct inode *inode, struct file *filp); > > ssize_t drm_read(struct file *filp, char __user *buffer, > > size_t count, loff_t *offset); > > diff --git a/include/drm/drm_ioctl.h b/include/drm/drm_ioctl.h > > index add42809642a..fafb6f592c4b 100644 > > --- a/include/drm/drm_ioctl.h > > +++ b/include/drm/drm_ioctl.h > > @@ -108,13 +108,6 @@ enum drm_ioctl_flags { > > * This is equivalent to callers with the SYSADMIN capability. > > */ > > DRM_ROOT_ONLY = BIT(2), > > - /** > > - * @DRM_CONTROL_ALLOW: > > - * > > - * Deprecated, do not use. Control nodes are in the process of getting > > - * removed. > > - */ > > - DRM_CONTROL_ALLOW = BIT(3), > > /** > > * @DRM_UNLOCKED: > > * > > -- > > 2.16.2 > > > > -- > Sean Paul, Software Engineer, Google / Chromium OS
On Thu, May 03, 2018 at 11:28:17AM +0200, Daniel Vetter wrote: > On Wed, May 02, 2018 at 04:10:45PM -0400, Sean Paul wrote: > > On Fri, Apr 20, 2018 at 08:51:59AM +0200, Daniel Vetter wrote: > > > With the ioctl and driver prep done, we can remove everything else. > > > > > > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> > > > Cc: Gustavo Padovan <gustavo@padovan.org> > > > Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> > > > Cc: Sean Paul <seanpaul@chromium.org> > > > Cc: David Airlie <airlied@linux.ie> > > > > Sorry, I missed this on my first pass. > > > > Reviewed-by: Sean Paul <seanpaul@chromium.org> > > Thanks for the review, pulled all 5 patches into drm-misc-next. Ok I lied, accidentally sent out the wrong version of the msm patch :-/ So last two patches not yet merged. Can you pls double-check v2 of the msm patch? Thanks, Daniel > -Daniel > > > > > > --- > > > drivers/gpu/drm/drm_drv.c | 10 ---------- > > > drivers/gpu/drm/drm_framebuffer.c | 3 +-- > > > drivers/gpu/drm/drm_ioctl.c | 8 +------- > > > drivers/gpu/drm/drm_sysfs.c | 4 +--- > > > include/drm/drm_device.h | 1 - > > > include/drm/drm_file.h | 13 ------------- > > > include/drm/drm_ioctl.h | 7 ------- > > > 7 files changed, 3 insertions(+), 43 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c > > > index 32a83b41ab61..f6910ebe4d0e 100644 > > > --- a/drivers/gpu/drm/drm_drv.c > > > +++ b/drivers/gpu/drm/drm_drv.c > > > @@ -99,8 +99,6 @@ static struct drm_minor **drm_minor_get_slot(struct drm_device *dev, > > > return &dev->primary; > > > case DRM_MINOR_RENDER: > > > return &dev->render; > > > - case DRM_MINOR_CONTROL: > > > - return &dev->control; > > > default: > > > BUG(); > > > } > > > @@ -567,7 +565,6 @@ int drm_dev_init(struct drm_device *dev, > > > err_minors: > > > drm_minor_free(dev, DRM_MINOR_PRIMARY); > > > drm_minor_free(dev, DRM_MINOR_RENDER); > > > - drm_minor_free(dev, DRM_MINOR_CONTROL); > > > drm_fs_inode_free(dev->anon_inode); > > > err_free: > > > mutex_destroy(&dev->master_mutex); > > > @@ -603,7 +600,6 @@ void drm_dev_fini(struct drm_device *dev) > > > > > > drm_minor_free(dev, DRM_MINOR_PRIMARY); > > > drm_minor_free(dev, DRM_MINOR_RENDER); > > > - drm_minor_free(dev, DRM_MINOR_CONTROL); > > > > > > mutex_destroy(&dev->master_mutex); > > > mutex_destroy(&dev->ctxlist_mutex); > > > @@ -796,10 +792,6 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags) > > > > > > mutex_lock(&drm_global_mutex); > > > > > > - ret = drm_minor_register(dev, DRM_MINOR_CONTROL); > > > - if (ret) > > > - goto err_minors; > > > - > > > ret = drm_minor_register(dev, DRM_MINOR_RENDER); > > > if (ret) > > > goto err_minors; > > > @@ -837,7 +829,6 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags) > > > remove_compat_control_link(dev); > > > drm_minor_unregister(dev, DRM_MINOR_PRIMARY); > > > drm_minor_unregister(dev, DRM_MINOR_RENDER); > > > - drm_minor_unregister(dev, DRM_MINOR_CONTROL); > > > out_unlock: > > > mutex_unlock(&drm_global_mutex); > > > return ret; > > > @@ -882,7 +873,6 @@ void drm_dev_unregister(struct drm_device *dev) > > > remove_compat_control_link(dev); > > > drm_minor_unregister(dev, DRM_MINOR_PRIMARY); > > > drm_minor_unregister(dev, DRM_MINOR_RENDER); > > > - drm_minor_unregister(dev, DRM_MINOR_CONTROL); > > > } > > > EXPORT_SYMBOL(drm_dev_unregister); > > > > > > diff --git a/drivers/gpu/drm/drm_framebuffer.c b/drivers/gpu/drm/drm_framebuffer.c > > > index 8c4d32adcc17..bfedceff87bb 100644 > > > --- a/drivers/gpu/drm/drm_framebuffer.c > > > +++ b/drivers/gpu/drm/drm_framebuffer.c > > > @@ -484,8 +484,7 @@ int drm_mode_getfb(struct drm_device *dev, > > > * backwards-compatibility reasons, we cannot make GET_FB() privileged, > > > * so just return an invalid handle for non-masters. > > > */ > > > - if (!drm_is_current_master(file_priv) && !capable(CAP_SYS_ADMIN) && > > > - !drm_is_control_client(file_priv)) { > > > + if (!drm_is_current_master(file_priv) && !capable(CAP_SYS_ADMIN)) { > > > r->handle = 0; > > > ret = 0; > > > goto out; > > > diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c > > > index 920279666cae..01b61c12d635 100644 > > > --- a/drivers/gpu/drm/drm_ioctl.c > > > +++ b/drivers/gpu/drm/drm_ioctl.c > > > @@ -510,13 +510,7 @@ int drm_ioctl_permit(u32 flags, struct drm_file *file_priv) > > > > > > /* MASTER is only for master or control clients */ > > > if (unlikely((flags & DRM_MASTER) && > > > - !drm_is_current_master(file_priv) && > > > - !drm_is_control_client(file_priv))) > > > - return -EACCES; > > > - > > > - /* Control clients must be explicitly allowed */ > > > - if (unlikely(!(flags & DRM_CONTROL_ALLOW) && > > > - drm_is_control_client(file_priv))) > > > + !drm_is_current_master(file_priv))) > > > return -EACCES; > > > > > > /* Render clients must be explicitly allowed */ > > > diff --git a/drivers/gpu/drm/drm_sysfs.c b/drivers/gpu/drm/drm_sysfs.c > > > index 1c5b5ce1fd7f..b3c1daad1169 100644 > > > --- a/drivers/gpu/drm/drm_sysfs.c > > > +++ b/drivers/gpu/drm/drm_sysfs.c > > > @@ -331,9 +331,7 @@ struct device *drm_sysfs_minor_alloc(struct drm_minor *minor) > > > struct device *kdev; > > > int r; > > > > > > - if (minor->type == DRM_MINOR_CONTROL) > > > - minor_str = "controlD%d"; > > > - else if (minor->type == DRM_MINOR_RENDER) > > > + if (minor->type == DRM_MINOR_RENDER) > > > minor_str = "renderD%d"; > > > else > > > minor_str = "card%d"; > > > diff --git a/include/drm/drm_device.h b/include/drm/drm_device.h > > > index 3a0eac2885b7..858ba19a3e29 100644 > > > --- a/include/drm/drm_device.h > > > +++ b/include/drm/drm_device.h > > > @@ -38,7 +38,6 @@ struct drm_device { > > > struct device *dev; /**< Device structure of bus-device */ > > > struct drm_driver *driver; /**< DRM driver managing the device */ > > > void *dev_private; /**< DRM driver private data */ > > > - struct drm_minor *control; /**< Control node */ > > > struct drm_minor *primary; /**< Primary node */ > > > struct drm_minor *render; /**< Render node */ > > > bool registered; > > > diff --git a/include/drm/drm_file.h b/include/drm/drm_file.h > > > index 5176c3797680..99ab50cbab00 100644 > > > --- a/include/drm/drm_file.h > > > +++ b/include/drm/drm_file.h > > > @@ -49,7 +49,6 @@ struct device; > > > > > > enum drm_minor_type { > > > DRM_MINOR_PRIMARY, > > > - DRM_MINOR_CONTROL, > > > DRM_MINOR_RENDER, > > > }; > > > > > > @@ -348,18 +347,6 @@ static inline bool drm_is_render_client(const struct drm_file *file_priv) > > > return file_priv->minor->type == DRM_MINOR_RENDER; > > > } > > > > > > -/** > > > - * drm_is_control_client - is this an open file of the control node > > > - * @file_priv: DRM file > > > - * > > > - * Control nodes are deprecated and in the process of getting removed from the > > > - * DRM userspace API. Do not ever use! > > > - */ > > > -static inline bool drm_is_control_client(const struct drm_file *file_priv) > > > -{ > > > - return file_priv->minor->type == DRM_MINOR_CONTROL; > > > -} > > > - > > > int drm_open(struct inode *inode, struct file *filp); > > > ssize_t drm_read(struct file *filp, char __user *buffer, > > > size_t count, loff_t *offset); > > > diff --git a/include/drm/drm_ioctl.h b/include/drm/drm_ioctl.h > > > index add42809642a..fafb6f592c4b 100644 > > > --- a/include/drm/drm_ioctl.h > > > +++ b/include/drm/drm_ioctl.h > > > @@ -108,13 +108,6 @@ enum drm_ioctl_flags { > > > * This is equivalent to callers with the SYSADMIN capability. > > > */ > > > DRM_ROOT_ONLY = BIT(2), > > > - /** > > > - * @DRM_CONTROL_ALLOW: > > > - * > > > - * Deprecated, do not use. Control nodes are in the process of getting > > > - * removed. > > > - */ > > > - DRM_CONTROL_ALLOW = BIT(3), > > > /** > > > * @DRM_UNLOCKED: > > > * > > > -- > > > 2.16.2 > > > > > > > -- > > Sean Paul, Software Engineer, Google / Chromium OS > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch
diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c index 32a83b41ab61..f6910ebe4d0e 100644 --- a/drivers/gpu/drm/drm_drv.c +++ b/drivers/gpu/drm/drm_drv.c @@ -99,8 +99,6 @@ static struct drm_minor **drm_minor_get_slot(struct drm_device *dev, return &dev->primary; case DRM_MINOR_RENDER: return &dev->render; - case DRM_MINOR_CONTROL: - return &dev->control; default: BUG(); } @@ -567,7 +565,6 @@ int drm_dev_init(struct drm_device *dev, err_minors: drm_minor_free(dev, DRM_MINOR_PRIMARY); drm_minor_free(dev, DRM_MINOR_RENDER); - drm_minor_free(dev, DRM_MINOR_CONTROL); drm_fs_inode_free(dev->anon_inode); err_free: mutex_destroy(&dev->master_mutex); @@ -603,7 +600,6 @@ void drm_dev_fini(struct drm_device *dev) drm_minor_free(dev, DRM_MINOR_PRIMARY); drm_minor_free(dev, DRM_MINOR_RENDER); - drm_minor_free(dev, DRM_MINOR_CONTROL); mutex_destroy(&dev->master_mutex); mutex_destroy(&dev->ctxlist_mutex); @@ -796,10 +792,6 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags) mutex_lock(&drm_global_mutex); - ret = drm_minor_register(dev, DRM_MINOR_CONTROL); - if (ret) - goto err_minors; - ret = drm_minor_register(dev, DRM_MINOR_RENDER); if (ret) goto err_minors; @@ -837,7 +829,6 @@ int drm_dev_register(struct drm_device *dev, unsigned long flags) remove_compat_control_link(dev); drm_minor_unregister(dev, DRM_MINOR_PRIMARY); drm_minor_unregister(dev, DRM_MINOR_RENDER); - drm_minor_unregister(dev, DRM_MINOR_CONTROL); out_unlock: mutex_unlock(&drm_global_mutex); return ret; @@ -882,7 +873,6 @@ void drm_dev_unregister(struct drm_device *dev) remove_compat_control_link(dev); drm_minor_unregister(dev, DRM_MINOR_PRIMARY); drm_minor_unregister(dev, DRM_MINOR_RENDER); - drm_minor_unregister(dev, DRM_MINOR_CONTROL); } EXPORT_SYMBOL(drm_dev_unregister); diff --git a/drivers/gpu/drm/drm_framebuffer.c b/drivers/gpu/drm/drm_framebuffer.c index 8c4d32adcc17..bfedceff87bb 100644 --- a/drivers/gpu/drm/drm_framebuffer.c +++ b/drivers/gpu/drm/drm_framebuffer.c @@ -484,8 +484,7 @@ int drm_mode_getfb(struct drm_device *dev, * backwards-compatibility reasons, we cannot make GET_FB() privileged, * so just return an invalid handle for non-masters. */ - if (!drm_is_current_master(file_priv) && !capable(CAP_SYS_ADMIN) && - !drm_is_control_client(file_priv)) { + if (!drm_is_current_master(file_priv) && !capable(CAP_SYS_ADMIN)) { r->handle = 0; ret = 0; goto out; diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c index 920279666cae..01b61c12d635 100644 --- a/drivers/gpu/drm/drm_ioctl.c +++ b/drivers/gpu/drm/drm_ioctl.c @@ -510,13 +510,7 @@ int drm_ioctl_permit(u32 flags, struct drm_file *file_priv) /* MASTER is only for master or control clients */ if (unlikely((flags & DRM_MASTER) && - !drm_is_current_master(file_priv) && - !drm_is_control_client(file_priv))) - return -EACCES; - - /* Control clients must be explicitly allowed */ - if (unlikely(!(flags & DRM_CONTROL_ALLOW) && - drm_is_control_client(file_priv))) + !drm_is_current_master(file_priv))) return -EACCES; /* Render clients must be explicitly allowed */ diff --git a/drivers/gpu/drm/drm_sysfs.c b/drivers/gpu/drm/drm_sysfs.c index 1c5b5ce1fd7f..b3c1daad1169 100644 --- a/drivers/gpu/drm/drm_sysfs.c +++ b/drivers/gpu/drm/drm_sysfs.c @@ -331,9 +331,7 @@ struct device *drm_sysfs_minor_alloc(struct drm_minor *minor) struct device *kdev; int r; - if (minor->type == DRM_MINOR_CONTROL) - minor_str = "controlD%d"; - else if (minor->type == DRM_MINOR_RENDER) + if (minor->type == DRM_MINOR_RENDER) minor_str = "renderD%d"; else minor_str = "card%d"; diff --git a/include/drm/drm_device.h b/include/drm/drm_device.h index 3a0eac2885b7..858ba19a3e29 100644 --- a/include/drm/drm_device.h +++ b/include/drm/drm_device.h @@ -38,7 +38,6 @@ struct drm_device { struct device *dev; /**< Device structure of bus-device */ struct drm_driver *driver; /**< DRM driver managing the device */ void *dev_private; /**< DRM driver private data */ - struct drm_minor *control; /**< Control node */ struct drm_minor *primary; /**< Primary node */ struct drm_minor *render; /**< Render node */ bool registered; diff --git a/include/drm/drm_file.h b/include/drm/drm_file.h index 5176c3797680..99ab50cbab00 100644 --- a/include/drm/drm_file.h +++ b/include/drm/drm_file.h @@ -49,7 +49,6 @@ struct device; enum drm_minor_type { DRM_MINOR_PRIMARY, - DRM_MINOR_CONTROL, DRM_MINOR_RENDER, }; @@ -348,18 +347,6 @@ static inline bool drm_is_render_client(const struct drm_file *file_priv) return file_priv->minor->type == DRM_MINOR_RENDER; } -/** - * drm_is_control_client - is this an open file of the control node - * @file_priv: DRM file - * - * Control nodes are deprecated and in the process of getting removed from the - * DRM userspace API. Do not ever use! - */ -static inline bool drm_is_control_client(const struct drm_file *file_priv) -{ - return file_priv->minor->type == DRM_MINOR_CONTROL; -} - int drm_open(struct inode *inode, struct file *filp); ssize_t drm_read(struct file *filp, char __user *buffer, size_t count, loff_t *offset); diff --git a/include/drm/drm_ioctl.h b/include/drm/drm_ioctl.h index add42809642a..fafb6f592c4b 100644 --- a/include/drm/drm_ioctl.h +++ b/include/drm/drm_ioctl.h @@ -108,13 +108,6 @@ enum drm_ioctl_flags { * This is equivalent to callers with the SYSADMIN capability. */ DRM_ROOT_ONLY = BIT(2), - /** - * @DRM_CONTROL_ALLOW: - * - * Deprecated, do not use. Control nodes are in the process of getting - * removed. - */ - DRM_CONTROL_ALLOW = BIT(3), /** * @DRM_UNLOCKED: *
With the ioctl and driver prep done, we can remove everything else. Signed-off-by: Daniel Vetter <daniel.vetter@intel.com> Cc: Gustavo Padovan <gustavo@padovan.org> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com> Cc: Sean Paul <seanpaul@chromium.org> Cc: David Airlie <airlied@linux.ie> --- drivers/gpu/drm/drm_drv.c | 10 ---------- drivers/gpu/drm/drm_framebuffer.c | 3 +-- drivers/gpu/drm/drm_ioctl.c | 8 +------- drivers/gpu/drm/drm_sysfs.c | 4 +--- include/drm/drm_device.h | 1 - include/drm/drm_file.h | 13 ------------- include/drm/drm_ioctl.h | 7 ------- 7 files changed, 3 insertions(+), 43 deletions(-)