* [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls
@ 2018-04-20 6:51 Daniel Vetter
2018-04-20 6:51 ` [PATCH 2/4] drm/i915: Drop DRM_CONTROL_ALLOW Daniel Vetter
` (4 more replies)
0 siblings, 5 replies; 19+ messages in thread
From: Daniel Vetter @ 2018-04-20 6:51 UTC (permalink / raw)
To: DRI Development
Cc: David Airlie, Intel Graphics Development, Daniel Vetter,
Daniel Vetter
We've disabled control nodes in
commit 8a357d10043c75e980e7fcdb60d2b913491564af
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date: Fri Oct 28 10:10:50 2016 +0200
drm: Nerf DRM_CONTROL nodes
and there was only a minor uapi break that we've paper over with
commit 6449b088dd51dd5aa6b38455888bbf538d21f2fc
Author: Daniel Vetter <daniel.vetter@ffwll.ch>
Date: Fri Dec 9 14:56:56 2016 +0100
drm: Add fake controlD* symlinks for backwards compat
Since then Keith has also added real control nodes with a
proper&useable uapi in the form of drm leases.
It's time to remove the control node leftovers.
Cc: Keith Packard <keithp@keithp.com>
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_ioc32.c | 4 +--
drivers/gpu/drm/drm_ioctl.c | 68 ++++++++++++++++++++++-----------------------
2 files changed, 36 insertions(+), 36 deletions(-)
diff --git a/drivers/gpu/drm/drm_ioc32.c b/drivers/gpu/drm/drm_ioc32.c
index f8e96e648acf..67b1fca39aa6 100644
--- a/drivers/gpu/drm/drm_ioc32.c
+++ b/drivers/gpu/drm/drm_ioc32.c
@@ -105,7 +105,7 @@ static int compat_drm_version(struct file *file, unsigned int cmd,
.desc = compat_ptr(v32.desc),
};
err = drm_ioctl_kernel(file, drm_version, &v,
- DRM_UNLOCKED|DRM_RENDER_ALLOW|DRM_CONTROL_ALLOW);
+ DRM_UNLOCKED|DRM_RENDER_ALLOW);
if (err)
return err;
@@ -885,7 +885,7 @@ static int compat_drm_mode_addfb2(struct file *file, unsigned int cmd,
return -EFAULT;
err = drm_ioctl_kernel(file, drm_mode_addfb2, &req64,
- DRM_CONTROL_ALLOW|DRM_UNLOCKED);
+ DRM_UNLOCKED);
if (err)
return err;
diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
index b5c92e9fa05e..920279666cae 100644
--- a/drivers/gpu/drm/drm_ioctl.c
+++ b/drivers/gpu/drm/drm_ioctl.c
@@ -539,7 +539,7 @@ EXPORT_SYMBOL(drm_ioctl_permit);
/* Ioctl table */
static const struct drm_ioctl_desc drm_ioctls[] = {
DRM_IOCTL_DEF(DRM_IOCTL_VERSION, drm_version,
- DRM_UNLOCKED|DRM_RENDER_ALLOW|DRM_CONTROL_ALLOW),
+ DRM_UNLOCKED|DRM_RENDER_ALLOW),
DRM_IOCTL_DEF(DRM_IOCTL_GET_UNIQUE, drm_getunique, DRM_UNLOCKED),
DRM_IOCTL_DEF(DRM_IOCTL_GET_MAGIC, drm_getmagic, DRM_UNLOCKED),
DRM_IOCTL_DEF(DRM_IOCTL_IRQ_BUSID, drm_irq_by_busid, DRM_MASTER|DRM_ROOT_ONLY),
@@ -613,41 +613,41 @@ static const struct drm_ioctl_desc drm_ioctls[] = {
DRM_IOCTL_DEF(DRM_IOCTL_GEM_FLINK, drm_gem_flink_ioctl, DRM_AUTH|DRM_UNLOCKED),
DRM_IOCTL_DEF(DRM_IOCTL_GEM_OPEN, drm_gem_open_ioctl, DRM_AUTH|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETRESOURCES, drm_mode_getresources, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETRESOURCES, drm_mode_getresources, DRM_UNLOCKED),
DRM_IOCTL_DEF(DRM_IOCTL_PRIME_HANDLE_TO_FD, drm_prime_handle_to_fd_ioctl, DRM_AUTH|DRM_UNLOCKED|DRM_RENDER_ALLOW),
DRM_IOCTL_DEF(DRM_IOCTL_PRIME_FD_TO_HANDLE, drm_prime_fd_to_handle_ioctl, DRM_AUTH|DRM_UNLOCKED|DRM_RENDER_ALLOW),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPLANERESOURCES, drm_mode_getplane_res, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETCRTC, drm_mode_getcrtc, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETCRTC, drm_mode_setcrtc, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPLANE, drm_mode_getplane, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETPLANE, drm_mode_setplane, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_CURSOR, drm_mode_cursor_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPLANERESOURCES, drm_mode_getplane_res, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETCRTC, drm_mode_getcrtc, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETCRTC, drm_mode_setcrtc, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPLANE, drm_mode_getplane, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETPLANE, drm_mode_setplane, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_CURSOR, drm_mode_cursor_ioctl, DRM_MASTER|DRM_UNLOCKED),
DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETGAMMA, drm_mode_gamma_get_ioctl, DRM_UNLOCKED),
DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETGAMMA, drm_mode_gamma_set_ioctl, DRM_MASTER|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETENCODER, drm_mode_getencoder, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETCONNECTOR, drm_mode_getconnector, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_ATTACHMODE, drm_noop, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_DETACHMODE, drm_noop, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPROPERTY, drm_mode_getproperty_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETPROPERTY, drm_mode_connector_property_set_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPROPBLOB, drm_mode_getblob_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETFB, drm_mode_getfb, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_ADDFB, drm_mode_addfb, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_ADDFB2, drm_mode_addfb2, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_RMFB, drm_mode_rmfb, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_PAGE_FLIP, drm_mode_page_flip_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_DIRTYFB, drm_mode_dirtyfb_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATE_DUMB, drm_mode_create_dumb_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_MAP_DUMB, drm_mode_mmap_dumb_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_DESTROY_DUMB, drm_mode_destroy_dumb_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_OBJ_GETPROPERTIES, drm_mode_obj_get_properties_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_OBJ_SETPROPERTY, drm_mode_obj_set_property_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_CURSOR2, drm_mode_cursor2_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_ATOMIC, drm_mode_atomic_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATEPROPBLOB, drm_mode_createblob_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_DESTROYPROPBLOB, drm_mode_destroyblob_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETENCODER, drm_mode_getencoder, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETCONNECTOR, drm_mode_getconnector, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_ATTACHMODE, drm_noop, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_DETACHMODE, drm_noop, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPROPERTY, drm_mode_getproperty_ioctl, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETPROPERTY, drm_mode_connector_property_set_ioctl, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPROPBLOB, drm_mode_getblob_ioctl, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETFB, drm_mode_getfb, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_ADDFB, drm_mode_addfb, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_ADDFB2, drm_mode_addfb2, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_RMFB, drm_mode_rmfb, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_PAGE_FLIP, drm_mode_page_flip_ioctl, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_DIRTYFB, drm_mode_dirtyfb_ioctl, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATE_DUMB, drm_mode_create_dumb_ioctl, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_MAP_DUMB, drm_mode_mmap_dumb_ioctl, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_DESTROY_DUMB, drm_mode_destroy_dumb_ioctl, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_OBJ_GETPROPERTIES, drm_mode_obj_get_properties_ioctl, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_OBJ_SETPROPERTY, drm_mode_obj_set_property_ioctl, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_CURSOR2, drm_mode_cursor2_ioctl, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_ATOMIC, drm_mode_atomic_ioctl, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATEPROPBLOB, drm_mode_createblob_ioctl, DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_DESTROYPROPBLOB, drm_mode_destroyblob_ioctl, DRM_UNLOCKED),
DRM_IOCTL_DEF(DRM_IOCTL_SYNCOBJ_CREATE, drm_syncobj_create_ioctl,
DRM_UNLOCKED|DRM_RENDER_ALLOW),
@@ -665,10 +665,10 @@ static const struct drm_ioctl_desc drm_ioctls[] = {
DRM_UNLOCKED|DRM_RENDER_ALLOW),
DRM_IOCTL_DEF(DRM_IOCTL_CRTC_GET_SEQUENCE, drm_crtc_get_sequence_ioctl, DRM_UNLOCKED),
DRM_IOCTL_DEF(DRM_IOCTL_CRTC_QUEUE_SEQUENCE, drm_crtc_queue_sequence_ioctl, DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATE_LEASE, drm_mode_create_lease_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_LIST_LESSEES, drm_mode_list_lessees_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_GET_LEASE, drm_mode_get_lease_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
- DRM_IOCTL_DEF(DRM_IOCTL_MODE_REVOKE_LEASE, drm_mode_revoke_lease_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATE_LEASE, drm_mode_create_lease_ioctl, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_LIST_LESSEES, drm_mode_list_lessees_ioctl, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_GET_LEASE, drm_mode_get_lease_ioctl, DRM_MASTER|DRM_UNLOCKED),
+ DRM_IOCTL_DEF(DRM_IOCTL_MODE_REVOKE_LEASE, drm_mode_revoke_lease_ioctl, DRM_MASTER|DRM_UNLOCKED),
};
#define DRM_CORE_IOCTL_COUNT ARRAY_SIZE( drm_ioctls )
--
2.16.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 2/4] drm/i915: Drop DRM_CONTROL_ALLOW
2018-04-20 6:51 [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls Daniel Vetter
@ 2018-04-20 6:51 ` Daniel Vetter
2018-04-23 8:26 ` Joonas Lahtinen
2018-05-02 15:02 ` Sean Paul
2018-04-20 6:51 ` [PATCH 3/4] drm/vmwgfx: " Daniel Vetter
` (3 subsequent siblings)
4 siblings, 2 replies; 19+ messages in thread
From: Daniel Vetter @ 2018-04-20 6:51 UTC (permalink / raw)
To: DRI Development; +Cc: Daniel Vetter, Intel Graphics Development, Rodrigo Vivi
Control nodes are no more!
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Jani Nikula <jani.nikula@linux.intel.com>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: intel-gfx@lists.freedesktop.org
---
drivers/gpu/drm/i915/i915_drv.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index b7dbeba72dec..c471a7528a50 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -2822,10 +2822,10 @@ static const struct drm_ioctl_desc i915_ioctls[] = {
DRM_IOCTL_DEF_DRV(I915_GEM_GET_APERTURE, i915_gem_get_aperture_ioctl, DRM_RENDER_ALLOW),
DRM_IOCTL_DEF_DRV(I915_GET_PIPE_FROM_CRTC_ID, intel_get_pipe_from_crtc_id_ioctl, 0),
DRM_IOCTL_DEF_DRV(I915_GEM_MADVISE, i915_gem_madvise_ioctl, DRM_RENDER_ALLOW),
- DRM_IOCTL_DEF_DRV(I915_OVERLAY_PUT_IMAGE, intel_overlay_put_image_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW),
- DRM_IOCTL_DEF_DRV(I915_OVERLAY_ATTRS, intel_overlay_attrs_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW),
- DRM_IOCTL_DEF_DRV(I915_SET_SPRITE_COLORKEY, intel_sprite_set_colorkey_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW),
- DRM_IOCTL_DEF_DRV(I915_GET_SPRITE_COLORKEY, drm_noop, DRM_MASTER|DRM_CONTROL_ALLOW),
+ DRM_IOCTL_DEF_DRV(I915_OVERLAY_PUT_IMAGE, intel_overlay_put_image_ioctl, DRM_MASTER),
+ DRM_IOCTL_DEF_DRV(I915_OVERLAY_ATTRS, intel_overlay_attrs_ioctl, DRM_MASTER),
+ DRM_IOCTL_DEF_DRV(I915_SET_SPRITE_COLORKEY, intel_sprite_set_colorkey_ioctl, DRM_MASTER),
+ DRM_IOCTL_DEF_DRV(I915_GET_SPRITE_COLORKEY, drm_noop, DRM_MASTER),
DRM_IOCTL_DEF_DRV(I915_GEM_WAIT, i915_gem_wait_ioctl, DRM_AUTH|DRM_RENDER_ALLOW),
DRM_IOCTL_DEF_DRV(I915_GEM_CONTEXT_CREATE, i915_gem_context_create_ioctl, DRM_RENDER_ALLOW),
DRM_IOCTL_DEF_DRV(I915_GEM_CONTEXT_DESTROY, i915_gem_context_destroy_ioctl, DRM_RENDER_ALLOW),
--
2.16.2
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 3/4] drm/vmwgfx: Drop DRM_CONTROL_ALLOW
2018-04-20 6:51 [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls Daniel Vetter
2018-04-20 6:51 ` [PATCH 2/4] drm/i915: Drop DRM_CONTROL_ALLOW Daniel Vetter
@ 2018-04-20 6:51 ` Daniel Vetter
2018-04-20 17:56 ` Thomas Hellstrom
2018-05-02 15:03 ` Sean Paul
2018-04-20 6:51 ` [PATCH 4/4] drm: remove all control node code Daniel Vetter
` (2 subsequent siblings)
4 siblings, 2 replies; 19+ messages in thread
From: Daniel Vetter @ 2018-04-20 6:51 UTC (permalink / raw)
To: DRI Development
Cc: Thomas Hellstrom, Sinclair Yeh, Daniel Vetter,
Intel Graphics Development, VMware Graphics, Daniel Vetter
Control nodes are no more!
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
Cc: Sinclair Yeh <syeh@vmware.com>
Cc: Thomas Hellstrom <thellstrom@vmware.com>
---
drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
index 70e1a8820a7c..97f37c3c16f2 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
@@ -159,14 +159,14 @@ static const struct drm_ioctl_desc vmw_ioctls[] = {
DRM_RENDER_ALLOW),
VMW_IOCTL_DEF(VMW_CURSOR_BYPASS,
vmw_kms_cursor_bypass_ioctl,
- DRM_MASTER | DRM_CONTROL_ALLOW),
+ DRM_MASTER),
VMW_IOCTL_DEF(VMW_CONTROL_STREAM, vmw_overlay_ioctl,
- DRM_MASTER | DRM_CONTROL_ALLOW),
+ DRM_MASTER),
VMW_IOCTL_DEF(VMW_CLAIM_STREAM, vmw_stream_claim_ioctl,
- DRM_MASTER | DRM_CONTROL_ALLOW),
+ DRM_MASTER),
VMW_IOCTL_DEF(VMW_UNREF_STREAM, vmw_stream_unref_ioctl,
- DRM_MASTER | DRM_CONTROL_ALLOW),
+ DRM_MASTER),
VMW_IOCTL_DEF(VMW_CREATE_CONTEXT, vmw_context_define_ioctl,
DRM_AUTH | DRM_RENDER_ALLOW),
--
2.16.2
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH 4/4] drm: remove all control node code
2018-04-20 6:51 [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls Daniel Vetter
2018-04-20 6:51 ` [PATCH 2/4] drm/i915: Drop DRM_CONTROL_ALLOW Daniel Vetter
2018-04-20 6:51 ` [PATCH 3/4] drm/vmwgfx: " Daniel Vetter
@ 2018-04-20 6:51 ` Daniel Vetter
2018-05-02 20:10 ` Sean Paul
2018-04-25 9:07 ` [PATCH] drm/msm: Don't setup control node debugfs files Daniel Vetter
2018-05-02 15:02 ` [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls Sean Paul
4 siblings, 1 reply; 19+ messages in thread
From: Daniel Vetter @ 2018-04-20 6:51 UTC (permalink / raw)
To: DRI Development
Cc: David Airlie, Intel Graphics Development, Daniel Vetter,
Daniel Vetter
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(-)
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
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH 3/4] drm/vmwgfx: Drop DRM_CONTROL_ALLOW
2018-04-20 6:51 ` [PATCH 3/4] drm/vmwgfx: " Daniel Vetter
@ 2018-04-20 17:56 ` Thomas Hellstrom
2018-04-24 13:01 ` Daniel Vetter
2018-05-02 15:03 ` Sean Paul
1 sibling, 1 reply; 19+ messages in thread
From: Thomas Hellstrom @ 2018-04-20 17:56 UTC (permalink / raw)
To: Daniel Vetter, DRI Development
Cc: Daniel Vetter, Thomas Hellstrom, VMware Graphics,
Intel Graphics Development
On 04/20/2018 08:51 AM, Daniel Vetter wrote:
> Control nodes are no more!
>
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
> Cc: Sinclair Yeh <syeh@vmware.com>
> Cc: Thomas Hellstrom <thellstrom@vmware.com>
> ---
> drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> index 70e1a8820a7c..97f37c3c16f2 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> @@ -159,14 +159,14 @@ static const struct drm_ioctl_desc vmw_ioctls[] = {
> DRM_RENDER_ALLOW),
> VMW_IOCTL_DEF(VMW_CURSOR_BYPASS,
> vmw_kms_cursor_bypass_ioctl,
> - DRM_MASTER | DRM_CONTROL_ALLOW),
> + DRM_MASTER),
>
> VMW_IOCTL_DEF(VMW_CONTROL_STREAM, vmw_overlay_ioctl,
> - DRM_MASTER | DRM_CONTROL_ALLOW),
> + DRM_MASTER),
> VMW_IOCTL_DEF(VMW_CLAIM_STREAM, vmw_stream_claim_ioctl,
> - DRM_MASTER | DRM_CONTROL_ALLOW),
> + DRM_MASTER),
> VMW_IOCTL_DEF(VMW_UNREF_STREAM, vmw_stream_unref_ioctl,
> - DRM_MASTER | DRM_CONTROL_ALLOW),
> + DRM_MASTER),
>
> VMW_IOCTL_DEF(VMW_CREATE_CONTEXT, vmw_context_define_ioctl,
> DRM_AUTH | DRM_RENDER_ALLOW),
Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
I can queue this on the next -fixes pull.
/Thomas
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 2/4] drm/i915: Drop DRM_CONTROL_ALLOW
2018-04-20 6:51 ` [PATCH 2/4] drm/i915: Drop DRM_CONTROL_ALLOW Daniel Vetter
@ 2018-04-23 8:26 ` Joonas Lahtinen
2018-05-02 15:02 ` Sean Paul
1 sibling, 0 replies; 19+ messages in thread
From: Joonas Lahtinen @ 2018-04-23 8:26 UTC (permalink / raw)
To: DRI Development; +Cc: Daniel Vetter, Intel Graphics Development, Rodrigo Vivi
Quoting Daniel Vetter (2018-04-20 09:51:57)
> Control nodes are no more!
>
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
> Cc: Jani Nikula <jani.nikula@linux.intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: intel-gfx@lists.freedesktop.org
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Regards, Joonas
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 3/4] drm/vmwgfx: Drop DRM_CONTROL_ALLOW
2018-04-20 17:56 ` Thomas Hellstrom
@ 2018-04-24 13:01 ` Daniel Vetter
2018-04-24 13:25 ` Thomas Hellstrom
0 siblings, 1 reply; 19+ messages in thread
From: Daniel Vetter @ 2018-04-24 13:01 UTC (permalink / raw)
To: Thomas Hellstrom
Cc: Thomas Hellstrom, Daniel Vetter, Intel Graphics Development,
DRI Development, VMware Graphics, Daniel Vetter
On Fri, Apr 20, 2018 at 07:56:34PM +0200, Thomas Hellstrom wrote:
> On 04/20/2018 08:51 AM, Daniel Vetter wrote:
> > Control nodes are no more!
> >
> > Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
> > Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
> > Cc: Sinclair Yeh <syeh@vmware.com>
> > Cc: Thomas Hellstrom <thellstrom@vmware.com>
> > ---
> > drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 8 ++++----
> > 1 file changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> > index 70e1a8820a7c..97f37c3c16f2 100644
> > --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> > +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> > @@ -159,14 +159,14 @@ static const struct drm_ioctl_desc vmw_ioctls[] = {
> > DRM_RENDER_ALLOW),
> > VMW_IOCTL_DEF(VMW_CURSOR_BYPASS,
> > vmw_kms_cursor_bypass_ioctl,
> > - DRM_MASTER | DRM_CONTROL_ALLOW),
> > + DRM_MASTER),
> > VMW_IOCTL_DEF(VMW_CONTROL_STREAM, vmw_overlay_ioctl,
> > - DRM_MASTER | DRM_CONTROL_ALLOW),
> > + DRM_MASTER),
> > VMW_IOCTL_DEF(VMW_CLAIM_STREAM, vmw_stream_claim_ioctl,
> > - DRM_MASTER | DRM_CONTROL_ALLOW),
> > + DRM_MASTER),
> > VMW_IOCTL_DEF(VMW_UNREF_STREAM, vmw_stream_unref_ioctl,
> > - DRM_MASTER | DRM_CONTROL_ALLOW),
> > + DRM_MASTER),
> > VMW_IOCTL_DEF(VMW_CREATE_CONTEXT, vmw_context_define_ioctl,
> > DRM_AUTH | DRM_RENDER_ALLOW),
>
> Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
>
> I can queue this on the next -fixes pull.
Through drm-misc-next would be simpler, assuming I get some review on
patches 1&4.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 3/4] drm/vmwgfx: Drop DRM_CONTROL_ALLOW
2018-04-24 13:01 ` Daniel Vetter
@ 2018-04-24 13:25 ` Thomas Hellstrom
0 siblings, 0 replies; 19+ messages in thread
From: Thomas Hellstrom @ 2018-04-24 13:25 UTC (permalink / raw)
To: Daniel Vetter
Cc: Thomas Hellstrom, Daniel Vetter, Intel Graphics Development,
DRI Development, VMware Graphics, Daniel Vetter
On 04/24/2018 03:01 PM, Daniel Vetter wrote:
> On Fri, Apr 20, 2018 at 07:56:34PM +0200, Thomas Hellstrom wrote:
>> On 04/20/2018 08:51 AM, Daniel Vetter wrote:
>>> Control nodes are no more!
>>>
>>> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
>>> Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
>>> Cc: Sinclair Yeh <syeh@vmware.com>
>>> Cc: Thomas Hellstrom <thellstrom@vmware.com>
>>> ---
>>> drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 8 ++++----
>>> 1 file changed, 4 insertions(+), 4 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
>>> index 70e1a8820a7c..97f37c3c16f2 100644
>>> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
>>> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
>>> @@ -159,14 +159,14 @@ static const struct drm_ioctl_desc vmw_ioctls[] = {
>>> DRM_RENDER_ALLOW),
>>> VMW_IOCTL_DEF(VMW_CURSOR_BYPASS,
>>> vmw_kms_cursor_bypass_ioctl,
>>> - DRM_MASTER | DRM_CONTROL_ALLOW),
>>> + DRM_MASTER),
>>> VMW_IOCTL_DEF(VMW_CONTROL_STREAM, vmw_overlay_ioctl,
>>> - DRM_MASTER | DRM_CONTROL_ALLOW),
>>> + DRM_MASTER),
>>> VMW_IOCTL_DEF(VMW_CLAIM_STREAM, vmw_stream_claim_ioctl,
>>> - DRM_MASTER | DRM_CONTROL_ALLOW),
>>> + DRM_MASTER),
>>> VMW_IOCTL_DEF(VMW_UNREF_STREAM, vmw_stream_unref_ioctl,
>>> - DRM_MASTER | DRM_CONTROL_ALLOW),
>>> + DRM_MASTER),
>>> VMW_IOCTL_DEF(VMW_CREATE_CONTEXT, vmw_context_define_ioctl,
>>> DRM_AUTH | DRM_RENDER_ALLOW),
>> Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
>>
>> I can queue this on the next -fixes pull.
> Through drm-misc-next would be simpler, assuming I get some review on
> patches 1&4.
> -Daniel
OK. I'll leave it out.
Thanks,
Thomas
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH] drm/msm: Don't setup control node debugfs files
2018-04-20 6:51 [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls Daniel Vetter
` (2 preceding siblings ...)
2018-04-20 6:51 ` [PATCH 4/4] drm: remove all control node code Daniel Vetter
@ 2018-04-25 9:07 ` Daniel Vetter
2018-05-02 15:03 ` Sean Paul
2018-05-03 9:31 ` Daniel Vetter
2018-05-02 15:02 ` [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls Sean Paul
4 siblings, 2 replies; 19+ messages in thread
From: Daniel Vetter @ 2018-04-25 9:07 UTC (permalink / raw)
To: DRI Development; +Cc: Arnd Bergmann, Daniel Vetter, Bjorn Andersson
It's going away.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Rob Clark <robdclark@gmail.com>
Cc: Jordan Crouse <jcrouse@codeaurora.org>
Cc: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Cc: Archit Taneja <architt@codeaurora.org>
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
---
drivers/gpu/drm/msm/adreno/adreno_device.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
index 8e0cb161754b..0ae5ace65462 100644
--- a/drivers/gpu/drm/msm/adreno/adreno_device.c
+++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
@@ -168,7 +168,6 @@ struct msm_gpu *adreno_load_gpu(struct drm_device *dev)
if (gpu->funcs->debugfs_init) {
gpu->funcs->debugfs_init(gpu, dev->primary);
gpu->funcs->debugfs_init(gpu, dev->render);
- gpu->funcs->debugfs_init(gpu, dev->control);
}
#endif
--
2.16.2
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls
2018-04-20 6:51 [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls Daniel Vetter
` (3 preceding siblings ...)
2018-04-25 9:07 ` [PATCH] drm/msm: Don't setup control node debugfs files Daniel Vetter
@ 2018-05-02 15:02 ` Sean Paul
4 siblings, 0 replies; 19+ messages in thread
From: Sean Paul @ 2018-05-02 15:02 UTC (permalink / raw)
To: Daniel Vetter
Cc: David Airlie, Intel Graphics Development, DRI Development,
Daniel Vetter
On Fri, Apr 20, 2018 at 08:51:56AM +0200, Daniel Vetter wrote:
> We've disabled control nodes in
>
> commit 8a357d10043c75e980e7fcdb60d2b913491564af
> Author: Daniel Vetter <daniel.vetter@ffwll.ch>
> Date: Fri Oct 28 10:10:50 2016 +0200
>
> drm: Nerf DRM_CONTROL nodes
>
> and there was only a minor uapi break that we've paper over with
>
> commit 6449b088dd51dd5aa6b38455888bbf538d21f2fc
> Author: Daniel Vetter <daniel.vetter@ffwll.ch>
> Date: Fri Dec 9 14:56:56 2016 +0100
>
> drm: Add fake controlD* symlinks for backwards compat
>
> Since then Keith has also added real control nodes with a
> proper&useable uapi in the form of drm leases.
>
> It's time to remove the control node leftovers.
>
Yeah, I guess since it's just the presence of controlD* that matters,
Reviewed-by: Sean Paul <seanpaul@chromium.org>
> Cc: Keith Packard <keithp@keithp.com>
> 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_ioc32.c | 4 +--
> drivers/gpu/drm/drm_ioctl.c | 68 ++++++++++++++++++++++-----------------------
> 2 files changed, 36 insertions(+), 36 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_ioc32.c b/drivers/gpu/drm/drm_ioc32.c
> index f8e96e648acf..67b1fca39aa6 100644
> --- a/drivers/gpu/drm/drm_ioc32.c
> +++ b/drivers/gpu/drm/drm_ioc32.c
> @@ -105,7 +105,7 @@ static int compat_drm_version(struct file *file, unsigned int cmd,
> .desc = compat_ptr(v32.desc),
> };
> err = drm_ioctl_kernel(file, drm_version, &v,
> - DRM_UNLOCKED|DRM_RENDER_ALLOW|DRM_CONTROL_ALLOW);
> + DRM_UNLOCKED|DRM_RENDER_ALLOW);
> if (err)
> return err;
>
> @@ -885,7 +885,7 @@ static int compat_drm_mode_addfb2(struct file *file, unsigned int cmd,
> return -EFAULT;
>
> err = drm_ioctl_kernel(file, drm_mode_addfb2, &req64,
> - DRM_CONTROL_ALLOW|DRM_UNLOCKED);
> + DRM_UNLOCKED);
> if (err)
> return err;
>
> diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
> index b5c92e9fa05e..920279666cae 100644
> --- a/drivers/gpu/drm/drm_ioctl.c
> +++ b/drivers/gpu/drm/drm_ioctl.c
> @@ -539,7 +539,7 @@ EXPORT_SYMBOL(drm_ioctl_permit);
> /* Ioctl table */
> static const struct drm_ioctl_desc drm_ioctls[] = {
> DRM_IOCTL_DEF(DRM_IOCTL_VERSION, drm_version,
> - DRM_UNLOCKED|DRM_RENDER_ALLOW|DRM_CONTROL_ALLOW),
> + DRM_UNLOCKED|DRM_RENDER_ALLOW),
> DRM_IOCTL_DEF(DRM_IOCTL_GET_UNIQUE, drm_getunique, DRM_UNLOCKED),
> DRM_IOCTL_DEF(DRM_IOCTL_GET_MAGIC, drm_getmagic, DRM_UNLOCKED),
> DRM_IOCTL_DEF(DRM_IOCTL_IRQ_BUSID, drm_irq_by_busid, DRM_MASTER|DRM_ROOT_ONLY),
> @@ -613,41 +613,41 @@ static const struct drm_ioctl_desc drm_ioctls[] = {
> DRM_IOCTL_DEF(DRM_IOCTL_GEM_FLINK, drm_gem_flink_ioctl, DRM_AUTH|DRM_UNLOCKED),
> DRM_IOCTL_DEF(DRM_IOCTL_GEM_OPEN, drm_gem_open_ioctl, DRM_AUTH|DRM_UNLOCKED),
>
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETRESOURCES, drm_mode_getresources, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETRESOURCES, drm_mode_getresources, DRM_UNLOCKED),
>
> DRM_IOCTL_DEF(DRM_IOCTL_PRIME_HANDLE_TO_FD, drm_prime_handle_to_fd_ioctl, DRM_AUTH|DRM_UNLOCKED|DRM_RENDER_ALLOW),
> DRM_IOCTL_DEF(DRM_IOCTL_PRIME_FD_TO_HANDLE, drm_prime_fd_to_handle_ioctl, DRM_AUTH|DRM_UNLOCKED|DRM_RENDER_ALLOW),
>
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPLANERESOURCES, drm_mode_getplane_res, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETCRTC, drm_mode_getcrtc, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETCRTC, drm_mode_setcrtc, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPLANE, drm_mode_getplane, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETPLANE, drm_mode_setplane, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_CURSOR, drm_mode_cursor_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPLANERESOURCES, drm_mode_getplane_res, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETCRTC, drm_mode_getcrtc, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETCRTC, drm_mode_setcrtc, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPLANE, drm_mode_getplane, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETPLANE, drm_mode_setplane, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_CURSOR, drm_mode_cursor_ioctl, DRM_MASTER|DRM_UNLOCKED),
> DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETGAMMA, drm_mode_gamma_get_ioctl, DRM_UNLOCKED),
> DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETGAMMA, drm_mode_gamma_set_ioctl, DRM_MASTER|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETENCODER, drm_mode_getencoder, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETCONNECTOR, drm_mode_getconnector, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_ATTACHMODE, drm_noop, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_DETACHMODE, drm_noop, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPROPERTY, drm_mode_getproperty_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETPROPERTY, drm_mode_connector_property_set_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPROPBLOB, drm_mode_getblob_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETFB, drm_mode_getfb, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_ADDFB, drm_mode_addfb, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_ADDFB2, drm_mode_addfb2, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_RMFB, drm_mode_rmfb, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_PAGE_FLIP, drm_mode_page_flip_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_DIRTYFB, drm_mode_dirtyfb_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATE_DUMB, drm_mode_create_dumb_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_MAP_DUMB, drm_mode_mmap_dumb_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_DESTROY_DUMB, drm_mode_destroy_dumb_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_OBJ_GETPROPERTIES, drm_mode_obj_get_properties_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_OBJ_SETPROPERTY, drm_mode_obj_set_property_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_CURSOR2, drm_mode_cursor2_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_ATOMIC, drm_mode_atomic_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATEPROPBLOB, drm_mode_createblob_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_DESTROYPROPBLOB, drm_mode_destroyblob_ioctl, DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETENCODER, drm_mode_getencoder, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETCONNECTOR, drm_mode_getconnector, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_ATTACHMODE, drm_noop, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_DETACHMODE, drm_noop, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPROPERTY, drm_mode_getproperty_ioctl, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_SETPROPERTY, drm_mode_connector_property_set_ioctl, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETPROPBLOB, drm_mode_getblob_ioctl, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GETFB, drm_mode_getfb, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_ADDFB, drm_mode_addfb, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_ADDFB2, drm_mode_addfb2, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_RMFB, drm_mode_rmfb, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_PAGE_FLIP, drm_mode_page_flip_ioctl, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_DIRTYFB, drm_mode_dirtyfb_ioctl, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATE_DUMB, drm_mode_create_dumb_ioctl, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_MAP_DUMB, drm_mode_mmap_dumb_ioctl, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_DESTROY_DUMB, drm_mode_destroy_dumb_ioctl, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_OBJ_GETPROPERTIES, drm_mode_obj_get_properties_ioctl, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_OBJ_SETPROPERTY, drm_mode_obj_set_property_ioctl, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_CURSOR2, drm_mode_cursor2_ioctl, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_ATOMIC, drm_mode_atomic_ioctl, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATEPROPBLOB, drm_mode_createblob_ioctl, DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_DESTROYPROPBLOB, drm_mode_destroyblob_ioctl, DRM_UNLOCKED),
>
> DRM_IOCTL_DEF(DRM_IOCTL_SYNCOBJ_CREATE, drm_syncobj_create_ioctl,
> DRM_UNLOCKED|DRM_RENDER_ALLOW),
> @@ -665,10 +665,10 @@ static const struct drm_ioctl_desc drm_ioctls[] = {
> DRM_UNLOCKED|DRM_RENDER_ALLOW),
> DRM_IOCTL_DEF(DRM_IOCTL_CRTC_GET_SEQUENCE, drm_crtc_get_sequence_ioctl, DRM_UNLOCKED),
> DRM_IOCTL_DEF(DRM_IOCTL_CRTC_QUEUE_SEQUENCE, drm_crtc_queue_sequence_ioctl, DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATE_LEASE, drm_mode_create_lease_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_LIST_LESSEES, drm_mode_list_lessees_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_GET_LEASE, drm_mode_get_lease_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> - DRM_IOCTL_DEF(DRM_IOCTL_MODE_REVOKE_LEASE, drm_mode_revoke_lease_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_CREATE_LEASE, drm_mode_create_lease_ioctl, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_LIST_LESSEES, drm_mode_list_lessees_ioctl, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_GET_LEASE, drm_mode_get_lease_ioctl, DRM_MASTER|DRM_UNLOCKED),
> + DRM_IOCTL_DEF(DRM_IOCTL_MODE_REVOKE_LEASE, drm_mode_revoke_lease_ioctl, DRM_MASTER|DRM_UNLOCKED),
> };
>
> #define DRM_CORE_IOCTL_COUNT ARRAY_SIZE( drm_ioctls )
> --
> 2.16.2
>
--
Sean Paul, Software Engineer, Google / Chromium OS
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 2/4] drm/i915: Drop DRM_CONTROL_ALLOW
2018-04-20 6:51 ` [PATCH 2/4] drm/i915: Drop DRM_CONTROL_ALLOW Daniel Vetter
2018-04-23 8:26 ` Joonas Lahtinen
@ 2018-05-02 15:02 ` Sean Paul
1 sibling, 0 replies; 19+ messages in thread
From: Sean Paul @ 2018-05-02 15:02 UTC (permalink / raw)
To: Daniel Vetter; +Cc: Intel Graphics Development, DRI Development, Rodrigo Vivi
On Fri, Apr 20, 2018 at 08:51:57AM +0200, Daniel Vetter wrote:
> Control nodes are no more!
>
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
> Cc: Jani Nikula <jani.nikula@linux.intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> Cc: intel-gfx@lists.freedesktop.org
> ---
> drivers/gpu/drm/i915/i915_drv.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> index b7dbeba72dec..c471a7528a50 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -2822,10 +2822,10 @@ static const struct drm_ioctl_desc i915_ioctls[] = {
> DRM_IOCTL_DEF_DRV(I915_GEM_GET_APERTURE, i915_gem_get_aperture_ioctl, DRM_RENDER_ALLOW),
> DRM_IOCTL_DEF_DRV(I915_GET_PIPE_FROM_CRTC_ID, intel_get_pipe_from_crtc_id_ioctl, 0),
> DRM_IOCTL_DEF_DRV(I915_GEM_MADVISE, i915_gem_madvise_ioctl, DRM_RENDER_ALLOW),
> - DRM_IOCTL_DEF_DRV(I915_OVERLAY_PUT_IMAGE, intel_overlay_put_image_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW),
> - DRM_IOCTL_DEF_DRV(I915_OVERLAY_ATTRS, intel_overlay_attrs_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW),
> - DRM_IOCTL_DEF_DRV(I915_SET_SPRITE_COLORKEY, intel_sprite_set_colorkey_ioctl, DRM_MASTER|DRM_CONTROL_ALLOW),
> - DRM_IOCTL_DEF_DRV(I915_GET_SPRITE_COLORKEY, drm_noop, DRM_MASTER|DRM_CONTROL_ALLOW),
> + DRM_IOCTL_DEF_DRV(I915_OVERLAY_PUT_IMAGE, intel_overlay_put_image_ioctl, DRM_MASTER),
> + DRM_IOCTL_DEF_DRV(I915_OVERLAY_ATTRS, intel_overlay_attrs_ioctl, DRM_MASTER),
> + DRM_IOCTL_DEF_DRV(I915_SET_SPRITE_COLORKEY, intel_sprite_set_colorkey_ioctl, DRM_MASTER),
> + DRM_IOCTL_DEF_DRV(I915_GET_SPRITE_COLORKEY, drm_noop, DRM_MASTER),
> DRM_IOCTL_DEF_DRV(I915_GEM_WAIT, i915_gem_wait_ioctl, DRM_AUTH|DRM_RENDER_ALLOW),
> DRM_IOCTL_DEF_DRV(I915_GEM_CONTEXT_CREATE, i915_gem_context_create_ioctl, DRM_RENDER_ALLOW),
> DRM_IOCTL_DEF_DRV(I915_GEM_CONTEXT_DESTROY, i915_gem_context_destroy_ioctl, DRM_RENDER_ALLOW),
> --
> 2.16.2
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Sean Paul, Software Engineer, Google / Chromium OS
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 3/4] drm/vmwgfx: Drop DRM_CONTROL_ALLOW
2018-04-20 6:51 ` [PATCH 3/4] drm/vmwgfx: " Daniel Vetter
2018-04-20 17:56 ` Thomas Hellstrom
@ 2018-05-02 15:03 ` Sean Paul
1 sibling, 0 replies; 19+ messages in thread
From: Sean Paul @ 2018-05-02 15:03 UTC (permalink / raw)
To: Daniel Vetter
Cc: Thomas Hellstrom, Sinclair Yeh, Intel Graphics Development,
DRI Development, VMware Graphics, Daniel Vetter
On Fri, Apr 20, 2018 at 08:51:58AM +0200, Daniel Vetter wrote:
> Control nodes are no more!
>
> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
> Cc: VMware Graphics <linux-graphics-maintainer@vmware.com>
> Cc: Sinclair Yeh <syeh@vmware.com>
> Cc: Thomas Hellstrom <thellstrom@vmware.com>
> ---
> drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> index 70e1a8820a7c..97f37c3c16f2 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
> @@ -159,14 +159,14 @@ static const struct drm_ioctl_desc vmw_ioctls[] = {
> DRM_RENDER_ALLOW),
> VMW_IOCTL_DEF(VMW_CURSOR_BYPASS,
> vmw_kms_cursor_bypass_ioctl,
> - DRM_MASTER | DRM_CONTROL_ALLOW),
> + DRM_MASTER),
>
> VMW_IOCTL_DEF(VMW_CONTROL_STREAM, vmw_overlay_ioctl,
> - DRM_MASTER | DRM_CONTROL_ALLOW),
> + DRM_MASTER),
> VMW_IOCTL_DEF(VMW_CLAIM_STREAM, vmw_stream_claim_ioctl,
> - DRM_MASTER | DRM_CONTROL_ALLOW),
> + DRM_MASTER),
> VMW_IOCTL_DEF(VMW_UNREF_STREAM, vmw_stream_unref_ioctl,
> - DRM_MASTER | DRM_CONTROL_ALLOW),
> + DRM_MASTER),
>
> VMW_IOCTL_DEF(VMW_CREATE_CONTEXT, vmw_context_define_ioctl,
> DRM_AUTH | DRM_RENDER_ALLOW),
> --
> 2.16.2
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Sean Paul, Software Engineer, Google / Chromium OS
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH] drm/msm: Don't setup control node debugfs files
2018-04-25 9:07 ` [PATCH] drm/msm: Don't setup control node debugfs files Daniel Vetter
@ 2018-05-02 15:03 ` Sean Paul
2018-05-03 9:31 ` Daniel Vetter
1 sibling, 0 replies; 19+ messages in thread
From: Sean Paul @ 2018-05-02 15:03 UTC (permalink / raw)
To: Daniel Vetter; +Cc: Arnd Bergmann, DRI Development, Bjorn Andersson
On Wed, Apr 25, 2018 at 11:07:57AM +0200, Daniel Vetter wrote:
> It's going away.
>
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
> Cc: Rob Clark <robdclark@gmail.com>
> Cc: Jordan Crouse <jcrouse@codeaurora.org>
> Cc: Nicolas Dechesne <nicolas.dechesne@linaro.org>
> Cc: Archit Taneja <architt@codeaurora.org>
> Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
> Cc: Arnd Bergmann <arnd@arndb.de>
> Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
> ---
> drivers/gpu/drm/msm/adreno/adreno_device.c | 1 -
> 1 file changed, 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
> index 8e0cb161754b..0ae5ace65462 100644
> --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
> +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
> @@ -168,7 +168,6 @@ struct msm_gpu *adreno_load_gpu(struct drm_device *dev)
> if (gpu->funcs->debugfs_init) {
> gpu->funcs->debugfs_init(gpu, dev->primary);
> gpu->funcs->debugfs_init(gpu, dev->render);
> - gpu->funcs->debugfs_init(gpu, dev->control);
> }
> #endif
>
> --
> 2.16.2
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Sean Paul, Software Engineer, Google / Chromium OS
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 4/4] drm: remove all control node code
2018-04-20 6:51 ` [PATCH 4/4] drm: remove all control node code Daniel Vetter
@ 2018-05-02 20:10 ` Sean Paul
2018-05-03 9:28 ` Daniel Vetter
0 siblings, 1 reply; 19+ messages in thread
From: Sean Paul @ 2018-05-02 20:10 UTC (permalink / raw)
To: Daniel Vetter
Cc: David Airlie, Intel Graphics Development, DRI Development,
Daniel Vetter
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
>
--
Sean Paul, Software Engineer, Google / Chromium OS
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH 4/4] drm: remove all control node code
2018-05-02 20:10 ` Sean Paul
@ 2018-05-03 9:28 ` Daniel Vetter
2018-05-03 9:32 ` Daniel Vetter
0 siblings, 1 reply; 19+ messages in thread
From: Daniel Vetter @ 2018-05-03 9:28 UTC (permalink / raw)
To: Sean Paul
Cc: David Airlie, Intel Graphics Development, DRI Development,
Daniel Vetter, Daniel Vetter
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
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH] drm/msm: Don't setup control node debugfs files
2018-04-25 9:07 ` [PATCH] drm/msm: Don't setup control node debugfs files Daniel Vetter
2018-05-02 15:03 ` Sean Paul
@ 2018-05-03 9:31 ` Daniel Vetter
2018-05-03 15:16 ` Sean Paul
1 sibling, 1 reply; 19+ messages in thread
From: Daniel Vetter @ 2018-05-03 9:31 UTC (permalink / raw)
To: DRI Development; +Cc: Arnd Bergmann, Daniel Vetter, Bjorn Andersson
It's going away.
v2: Try harder to find them all.
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Rob Clark <robdclark@gmail.com>
Cc: Jordan Crouse <jcrouse@codeaurora.org>
Cc: Nicolas Dechesne <nicolas.dechesne@linaro.org>
Cc: Archit Taneja <architt@codeaurora.org>
Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
---
drivers/gpu/drm/msm/adreno/adreno_device.c | 1 -
drivers/gpu/drm/msm/msm_debugfs.c | 3 ---
2 files changed, 4 deletions(-)
diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
index 8e0cb161754b..0ae5ace65462 100644
--- a/drivers/gpu/drm/msm/adreno/adreno_device.c
+++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
@@ -168,7 +168,6 @@ struct msm_gpu *adreno_load_gpu(struct drm_device *dev)
if (gpu->funcs->debugfs_init) {
gpu->funcs->debugfs_init(gpu, dev->primary);
gpu->funcs->debugfs_init(gpu, dev->render);
- gpu->funcs->debugfs_init(gpu, dev->control);
}
#endif
diff --git a/drivers/gpu/drm/msm/msm_debugfs.c b/drivers/gpu/drm/msm/msm_debugfs.c
index ba74cb4f94df..1ff3fda245d1 100644
--- a/drivers/gpu/drm/msm/msm_debugfs.c
+++ b/drivers/gpu/drm/msm/msm_debugfs.c
@@ -140,9 +140,6 @@ int msm_debugfs_late_init(struct drm_device *dev)
if (ret)
return ret;
ret = late_init_minor(dev->render);
- if (ret)
- return ret;
- ret = late_init_minor(dev->control);
return ret;
}
--
2.17.0
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH 4/4] drm: remove all control node code
2018-05-03 9:28 ` Daniel Vetter
@ 2018-05-03 9:32 ` Daniel Vetter
0 siblings, 0 replies; 19+ messages in thread
From: Daniel Vetter @ 2018-05-03 9:32 UTC (permalink / raw)
To: Sean Paul
Cc: David Airlie, Intel Graphics Development, DRI Development,
Daniel Vetter, Daniel Vetter
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
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH] drm/msm: Don't setup control node debugfs files
2018-05-03 9:31 ` Daniel Vetter
@ 2018-05-03 15:16 ` Sean Paul
2018-05-03 19:29 ` Daniel Vetter
0 siblings, 1 reply; 19+ messages in thread
From: Sean Paul @ 2018-05-03 15:16 UTC (permalink / raw)
To: Daniel Vetter; +Cc: Arnd Bergmann, DRI Development, Bjorn Andersson
On Thu, May 03, 2018 at 11:31:07AM +0200, Daniel Vetter wrote:
> It's going away.
>
> v2: Try harder to find them all.
>
> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Still
Reviewed-by: Sean Paul <seanpaul@chromium.org>
> Cc: Rob Clark <robdclark@gmail.com>
> Cc: Jordan Crouse <jcrouse@codeaurora.org>
> Cc: Nicolas Dechesne <nicolas.dechesne@linaro.org>
> Cc: Archit Taneja <architt@codeaurora.org>
> Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
> Cc: Arnd Bergmann <arnd@arndb.de>
> Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
> ---
> drivers/gpu/drm/msm/adreno/adreno_device.c | 1 -
> drivers/gpu/drm/msm/msm_debugfs.c | 3 ---
> 2 files changed, 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
> index 8e0cb161754b..0ae5ace65462 100644
> --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
> +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
> @@ -168,7 +168,6 @@ struct msm_gpu *adreno_load_gpu(struct drm_device *dev)
> if (gpu->funcs->debugfs_init) {
> gpu->funcs->debugfs_init(gpu, dev->primary);
> gpu->funcs->debugfs_init(gpu, dev->render);
> - gpu->funcs->debugfs_init(gpu, dev->control);
> }
> #endif
>
> diff --git a/drivers/gpu/drm/msm/msm_debugfs.c b/drivers/gpu/drm/msm/msm_debugfs.c
> index ba74cb4f94df..1ff3fda245d1 100644
> --- a/drivers/gpu/drm/msm/msm_debugfs.c
> +++ b/drivers/gpu/drm/msm/msm_debugfs.c
> @@ -140,9 +140,6 @@ int msm_debugfs_late_init(struct drm_device *dev)
> if (ret)
> return ret;
> ret = late_init_minor(dev->render);
> - if (ret)
> - return ret;
> - ret = late_init_minor(dev->control);
> return ret;
> }
>
> --
> 2.17.0
>
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
--
Sean Paul, Software Engineer, Google / Chromium OS
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH] drm/msm: Don't setup control node debugfs files
2018-05-03 15:16 ` Sean Paul
@ 2018-05-03 19:29 ` Daniel Vetter
0 siblings, 0 replies; 19+ messages in thread
From: Daniel Vetter @ 2018-05-03 19:29 UTC (permalink / raw)
To: Sean Paul; +Cc: Daniel Vetter, Arnd Bergmann, DRI Development, Bjorn Andersson
On Thu, May 03, 2018 at 11:16:55AM -0400, Sean Paul wrote:
> On Thu, May 03, 2018 at 11:31:07AM +0200, Daniel Vetter wrote:
> > It's going away.
> >
> > v2: Try harder to find them all.
> >
> > Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
>
> Still
> Reviewed-by: Sean Paul <seanpaul@chromium.org>
Ok, this compiled better, both remaining patches pushed.
-Daniel
>
> > Cc: Rob Clark <robdclark@gmail.com>
> > Cc: Jordan Crouse <jcrouse@codeaurora.org>
> > Cc: Nicolas Dechesne <nicolas.dechesne@linaro.org>
> > Cc: Archit Taneja <architt@codeaurora.org>
> > Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
> > Cc: Arnd Bergmann <arnd@arndb.de>
> > Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
> > ---
> > drivers/gpu/drm/msm/adreno/adreno_device.c | 1 -
> > drivers/gpu/drm/msm/msm_debugfs.c | 3 ---
> > 2 files changed, 4 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adreno/adreno_device.c
> > index 8e0cb161754b..0ae5ace65462 100644
> > --- a/drivers/gpu/drm/msm/adreno/adreno_device.c
> > +++ b/drivers/gpu/drm/msm/adreno/adreno_device.c
> > @@ -168,7 +168,6 @@ struct msm_gpu *adreno_load_gpu(struct drm_device *dev)
> > if (gpu->funcs->debugfs_init) {
> > gpu->funcs->debugfs_init(gpu, dev->primary);
> > gpu->funcs->debugfs_init(gpu, dev->render);
> > - gpu->funcs->debugfs_init(gpu, dev->control);
> > }
> > #endif
> >
> > diff --git a/drivers/gpu/drm/msm/msm_debugfs.c b/drivers/gpu/drm/msm/msm_debugfs.c
> > index ba74cb4f94df..1ff3fda245d1 100644
> > --- a/drivers/gpu/drm/msm/msm_debugfs.c
> > +++ b/drivers/gpu/drm/msm/msm_debugfs.c
> > @@ -140,9 +140,6 @@ int msm_debugfs_late_init(struct drm_device *dev)
> > if (ret)
> > return ret;
> > ret = late_init_minor(dev->render);
> > - if (ret)
> > - return ret;
> > - ret = late_init_minor(dev->control);
> > return ret;
> > }
> >
> > --
> > 2.17.0
> >
> > _______________________________________________
> > dri-devel mailing list
> > dri-devel@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/dri-devel
>
> --
> Sean Paul, Software Engineer, Google / Chromium OS
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2018-05-03 19:29 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-04-20 6:51 [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls Daniel Vetter
2018-04-20 6:51 ` [PATCH 2/4] drm/i915: Drop DRM_CONTROL_ALLOW Daniel Vetter
2018-04-23 8:26 ` Joonas Lahtinen
2018-05-02 15:02 ` Sean Paul
2018-04-20 6:51 ` [PATCH 3/4] drm/vmwgfx: " Daniel Vetter
2018-04-20 17:56 ` Thomas Hellstrom
2018-04-24 13:01 ` Daniel Vetter
2018-04-24 13:25 ` Thomas Hellstrom
2018-05-02 15:03 ` Sean Paul
2018-04-20 6:51 ` [PATCH 4/4] drm: remove all control node code Daniel Vetter
2018-05-02 20:10 ` Sean Paul
2018-05-03 9:28 ` Daniel Vetter
2018-05-03 9:32 ` Daniel Vetter
2018-04-25 9:07 ` [PATCH] drm/msm: Don't setup control node debugfs files Daniel Vetter
2018-05-02 15:03 ` Sean Paul
2018-05-03 9:31 ` Daniel Vetter
2018-05-03 15:16 ` Sean Paul
2018-05-03 19:29 ` Daniel Vetter
2018-05-02 15:02 ` [PATCH 1/4] drm: Drop DRM_CONTROL_ALLOW from ioctls Sean Paul
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox