From: Sean Paul seanpaul@chromium.org
Hellooo, This has been covered ad nauseam on the m-l and irc, but for the record:
Reviews are a mandatory requirement for patches in drm-misc-next, it's what keeps us all honest in the committer model. The most recent drm-misc-next pull included a handful of patches that were missing reviews. There was absolutely zero nefarious intent, but rules are rules, so we're reverting them.
I feel confident re-applying all of these with my SoB, so I plan on doing that in the same push.
Thanks to everyone for handling this so well, seriously awesome that we can stay constructive as a community \o/.
Lastly, this will be caught by our tooling in the future so this should be the last time this happens (on accident).
Sean
Sean Paul (5): Revert "Revert "drm/gem: Rename drm_gem_dumb_map_offset() to drm_gem_map_offset()"" Revert "Revert "drm/panfrost: Use drm_gem_map_offset()"" Revert "drm/vgem: drop DRM_AUTH usage from the driver" Revert "drm/msm: drop DRM_AUTH usage from the driver" Revert "drm/nouveau: remove open-coded drm_invalid_op()"
drivers/gpu/drm/drm_dumb_buffers.c | 4 ++-- drivers/gpu/drm/drm_gem.c | 10 +++++++--- drivers/gpu/drm/exynos/exynos_drm_gem.c | 3 +-- drivers/gpu/drm/msm/msm_drv.c | 22 +++++++++++----------- drivers/gpu/drm/nouveau/nouveau_abi16.c | 6 ++++++ drivers/gpu/drm/nouveau/nouveau_abi16.h | 1 + drivers/gpu/drm/nouveau/nouveau_drm.c | 2 +- drivers/gpu/drm/panfrost/panfrost_drv.c | 16 ++-------------- drivers/gpu/drm/vgem/vgem_drv.c | 4 ++-- include/drm/drm_gem.h | 4 ++-- 10 files changed, 35 insertions(+), 37 deletions(-)
From: Sean Paul seanpaul@chromium.org
This reverts commit 415d2e9e07574d3de63b8df77dc686e0ebf64865.
Mandatory review was missing from this patch.
Signed-off-by: Sean Paul seanpaul@chromium.org --- drivers/gpu/drm/drm_dumb_buffers.c | 4 ++-- drivers/gpu/drm/drm_gem.c | 10 +++++++--- drivers/gpu/drm/exynos/exynos_drm_gem.c | 3 +-- include/drm/drm_gem.h | 4 ++-- 4 files changed, 12 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/drm_dumb_buffers.c b/drivers/gpu/drm/drm_dumb_buffers.c index d18a740fe0f1..b55cfc9e8772 100644 --- a/drivers/gpu/drm/drm_dumb_buffers.c +++ b/drivers/gpu/drm/drm_dumb_buffers.c @@ -48,7 +48,7 @@ * To support dumb objects drivers must implement the &drm_driver.dumb_create * operation. &drm_driver.dumb_destroy defaults to drm_gem_dumb_destroy() if * not set and &drm_driver.dumb_map_offset defaults to - * drm_gem_dumb_map_offset(). See the callbacks for further details. + * drm_gem_map_offset(). See the callbacks for further details. * * Note that dumb objects may not be used for gpu acceleration, as has been * attempted on some ARM embedded platforms. Such drivers really must have @@ -127,7 +127,7 @@ int drm_mode_mmap_dumb_ioctl(struct drm_device *dev, args->handle, &args->offset); else - return drm_gem_dumb_map_offset(file_priv, dev, args->handle, + return drm_gem_map_offset(file_priv, dev, args->handle, &args->offset); }
diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c index afc38cece3f5..8cbfd60e09c0 100644 --- a/drivers/gpu/drm/drm_gem.c +++ b/drivers/gpu/drm/drm_gem.c @@ -298,7 +298,7 @@ drm_gem_handle_delete(struct drm_file *filp, u32 handle) EXPORT_SYMBOL(drm_gem_handle_delete);
/** - * drm_gem_dumb_map_offset - return the fake mmap offset for a gem object + * drm_gem_map_offset - return the fake mmap offset for a gem object * @file: drm file-private structure containing the gem object * @dev: corresponding drm_device * @handle: gem object handle @@ -307,10 +307,14 @@ EXPORT_SYMBOL(drm_gem_handle_delete); * This implements the &drm_driver.dumb_map_offset kms driver callback for * drivers which use gem to manage their backing storage. * + * It can also be used by drivers using GEM BO implementations which + * have same restriction that imported objects cannot be mapped. The + * shmem backend is one example. + * * Returns: * 0 on success or a negative error code on failure. */ -int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev, +int drm_gem_map_offset(struct drm_file *file, struct drm_device *dev, u32 handle, u64 *offset) { struct drm_gem_object *obj; @@ -336,7 +340,7 @@ int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev,
return ret; } -EXPORT_SYMBOL_GPL(drm_gem_dumb_map_offset); +EXPORT_SYMBOL_GPL(drm_gem_map_offset);
/** * drm_gem_dumb_destroy - dumb fb callback helper for gem based drivers diff --git a/drivers/gpu/drm/exynos/exynos_drm_gem.c b/drivers/gpu/drm/exynos/exynos_drm_gem.c index d734d9d51762..bf0ad8e5a02b 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_gem.c +++ b/drivers/gpu/drm/exynos/exynos_drm_gem.c @@ -273,8 +273,7 @@ int exynos_drm_gem_map_ioctl(struct drm_device *dev, void *data, { struct drm_exynos_gem_map *args = data;
- return drm_gem_dumb_map_offset(file_priv, dev, args->handle, - &args->offset); + return drm_gem_map_offset(file_priv, dev, args->handle, &args->offset); }
struct exynos_drm_gem *exynos_drm_gem_get(struct drm_file *filp, diff --git a/include/drm/drm_gem.h b/include/drm/drm_gem.h index ae693c0666cd..0d6445fa9541 100644 --- a/include/drm/drm_gem.h +++ b/include/drm/drm_gem.h @@ -401,8 +401,8 @@ int drm_gem_fence_array_add(struct xarray *fence_array, int drm_gem_fence_array_add_implicit(struct xarray *fence_array, struct drm_gem_object *obj, bool write); -int drm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev, - u32 handle, u64 *offset); +int drm_gem_map_offset(struct drm_file *file, struct drm_device *dev, + u32 handle, u64 *offset); int drm_gem_dumb_destroy(struct drm_file *file, struct drm_device *dev, uint32_t handle);
From: Sean Paul seanpaul@chromium.org
This reverts commit be855382bacb5ccfd24f9be6098d87acf4cfbb15.
Mandatory review was missing from this patch.
Signed-off-by: Sean Paul seanpaul@chromium.org --- drivers/gpu/drm/panfrost/panfrost_drv.c | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-)
diff --git a/drivers/gpu/drm/panfrost/panfrost_drv.c b/drivers/gpu/drm/panfrost/panfrost_drv.c index b187daa4da85..b2e325e270b7 100644 --- a/drivers/gpu/drm/panfrost/panfrost_drv.c +++ b/drivers/gpu/drm/panfrost/panfrost_drv.c @@ -291,26 +291,14 @@ static int panfrost_ioctl_mmap_bo(struct drm_device *dev, void *data, struct drm_file *file_priv) { struct drm_panfrost_mmap_bo *args = data; - struct drm_gem_object *gem_obj; - int ret;
if (args->flags != 0) { DRM_INFO("unknown mmap_bo flags: %d\n", args->flags); return -EINVAL; }
- gem_obj = drm_gem_object_lookup(file_priv, args->handle); - if (!gem_obj) { - DRM_DEBUG("Failed to look up GEM BO %d\n", args->handle); - return -ENOENT; - } - - ret = drm_gem_create_mmap_offset(gem_obj); - if (ret == 0) - args->offset = drm_vma_node_offset_addr(&gem_obj->vma_node); - drm_gem_object_put_unlocked(gem_obj); - - return ret; + return drm_gem_map_offset(file_priv, dev, args->handle, + &args->offset); }
static int panfrost_ioctl_get_bo_offset(struct drm_device *dev, void *data,
From: Sean Paul seanpaul@chromium.org
This reverts commit e4eee93d25776da998ec2dfaabe7d2206598d26d.
Mandatory review was missing from this patch.
Signed-off-by: Sean Paul seanpaul@chromium.org --- drivers/gpu/drm/vgem/vgem_drv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/vgem/vgem_drv.c b/drivers/gpu/drm/vgem/vgem_drv.c index 5bd60ded3d81..1d0ccfcbc472 100644 --- a/drivers/gpu/drm/vgem/vgem_drv.c +++ b/drivers/gpu/drm/vgem/vgem_drv.c @@ -253,8 +253,8 @@ static int vgem_gem_dumb_map(struct drm_file *file, struct drm_device *dev, }
static struct drm_ioctl_desc vgem_ioctls[] = { - DRM_IOCTL_DEF_DRV(VGEM_FENCE_ATTACH, vgem_fence_attach_ioctl, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(VGEM_FENCE_SIGNAL, vgem_fence_signal_ioctl, DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(VGEM_FENCE_ATTACH, vgem_fence_attach_ioctl, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(VGEM_FENCE_SIGNAL, vgem_fence_signal_ioctl, DRM_AUTH|DRM_RENDER_ALLOW), };
static int vgem_mmap(struct file *filp, struct vm_area_struct *vma)
From: Sean Paul seanpaul@chromium.org
This reverts commit 88209d2c5035737f96bcfc2fd73c0fd8d80e9bf1.
Mandatory review was missing from this patch.
Signed-off-by: Sean Paul seanpaul@chromium.org --- drivers/gpu/drm/msm/msm_drv.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c index ea335ca25eca..abf8f4e4e543 100644 --- a/drivers/gpu/drm/msm/msm_drv.c +++ b/drivers/gpu/drm/msm/msm_drv.c @@ -984,17 +984,17 @@ static int msm_ioctl_submitqueue_close(struct drm_device *dev, void *data, }
static const struct drm_ioctl_desc msm_ioctls[] = { - DRM_IOCTL_DEF_DRV(MSM_GET_PARAM, msm_ioctl_get_param, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_GEM_NEW, msm_ioctl_gem_new, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_GEM_INFO, msm_ioctl_gem_info, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_GEM_CPU_PREP, msm_ioctl_gem_cpu_prep, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_GEM_CPU_FINI, msm_ioctl_gem_cpu_fini, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_GEM_SUBMIT, msm_ioctl_gem_submit, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_WAIT_FENCE, msm_ioctl_wait_fence, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_GEM_MADVISE, msm_ioctl_gem_madvise, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_SUBMITQUEUE_NEW, msm_ioctl_submitqueue_new, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_SUBMITQUEUE_CLOSE, msm_ioctl_submitqueue_close, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(MSM_SUBMITQUEUE_QUERY, msm_ioctl_submitqueue_query, DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_GET_PARAM, msm_ioctl_get_param, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_GEM_NEW, msm_ioctl_gem_new, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_GEM_INFO, msm_ioctl_gem_info, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_GEM_CPU_PREP, msm_ioctl_gem_cpu_prep, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_GEM_CPU_FINI, msm_ioctl_gem_cpu_fini, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_GEM_SUBMIT, msm_ioctl_gem_submit, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_WAIT_FENCE, msm_ioctl_wait_fence, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_GEM_MADVISE, msm_ioctl_gem_madvise, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_SUBMITQUEUE_NEW, msm_ioctl_submitqueue_new, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_SUBMITQUEUE_CLOSE, msm_ioctl_submitqueue_close, DRM_AUTH|DRM_RENDER_ALLOW), + DRM_IOCTL_DEF_DRV(MSM_SUBMITQUEUE_QUERY, msm_ioctl_submitqueue_query, DRM_AUTH|DRM_RENDER_ALLOW), };
static const struct vm_operations_struct vm_ops = {
From: Sean Paul seanpaul@chromium.org
This reverts commit ccdae42575695ab442941310bd67c7ed1714e273.
Mandatory review was missing from this patch.
Signed-off-by: Sean Paul seanpaul@chromium.org --- drivers/gpu/drm/nouveau/nouveau_abi16.c | 6 ++++++ drivers/gpu/drm/nouveau/nouveau_abi16.h | 1 + drivers/gpu/drm/nouveau/nouveau_drm.c | 2 +- 3 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/nouveau/nouveau_abi16.c b/drivers/gpu/drm/nouveau/nouveau_abi16.c index e2bae1424502..94387e62b338 100644 --- a/drivers/gpu/drm/nouveau/nouveau_abi16.c +++ b/drivers/gpu/drm/nouveau/nouveau_abi16.c @@ -244,6 +244,12 @@ nouveau_abi16_ioctl_getparam(ABI16_IOCTL_ARGS) return 0; }
+int +nouveau_abi16_ioctl_setparam(ABI16_IOCTL_ARGS) +{ + return -EINVAL; +} + int nouveau_abi16_ioctl_channel_alloc(ABI16_IOCTL_ARGS) { diff --git a/drivers/gpu/drm/nouveau/nouveau_abi16.h b/drivers/gpu/drm/nouveau/nouveau_abi16.h index 70f6aa5c9dd1..195546719bfe 100644 --- a/drivers/gpu/drm/nouveau/nouveau_abi16.h +++ b/drivers/gpu/drm/nouveau/nouveau_abi16.h @@ -6,6 +6,7 @@ struct drm_device *dev, void *data, struct drm_file *file_priv
int nouveau_abi16_ioctl_getparam(ABI16_IOCTL_ARGS); +int nouveau_abi16_ioctl_setparam(ABI16_IOCTL_ARGS); int nouveau_abi16_ioctl_channel_alloc(ABI16_IOCTL_ARGS); int nouveau_abi16_ioctl_channel_free(ABI16_IOCTL_ARGS); int nouveau_abi16_ioctl_grobj_alloc(ABI16_IOCTL_ARGS); diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c index 7e045580a3a4..551c4ee2ceed 100644 --- a/drivers/gpu/drm/nouveau/nouveau_drm.c +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c @@ -1047,7 +1047,7 @@ nouveau_drm_postclose(struct drm_device *dev, struct drm_file *fpriv) static const struct drm_ioctl_desc nouveau_ioctls[] = { DRM_IOCTL_DEF_DRV(NOUVEAU_GETPARAM, nouveau_abi16_ioctl_getparam, DRM_RENDER_ALLOW), - DRM_IOCTL_DEF_DRV(NOUVEAU_SETPARAM, drm_invalid_op, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY), + DRM_IOCTL_DEF_DRV(NOUVEAU_SETPARAM, nouveau_abi16_ioctl_setparam, DRM_AUTH|DRM_MASTER|DRM_ROOT_ONLY), DRM_IOCTL_DEF_DRV(NOUVEAU_CHANNEL_ALLOC, nouveau_abi16_ioctl_channel_alloc, DRM_RENDER_ALLOW), DRM_IOCTL_DEF_DRV(NOUVEAU_CHANNEL_FREE, nouveau_abi16_ioctl_channel_free, DRM_RENDER_ALLOW), DRM_IOCTL_DEF_DRV(NOUVEAU_GROBJ_ALLOC, nouveau_abi16_ioctl_grobj_alloc, DRM_RENDER_ALLOW),
Hi,
On Wed, Aug 07, 2019 at 10:20:53AM -0400, Sean Paul wrote:
From: Sean Paul seanpaul@chromium.org
Hellooo, This has been covered ad nauseam on the m-l and irc, but for the record:
Reviews are a mandatory requirement for patches in drm-misc-next, it's what keeps us all honest in the committer model. The most recent drm-misc-next pull included a handful of patches that were missing reviews. There was absolutely zero nefarious intent, but rules are rules, so we're reverting them.
I feel confident re-applying all of these with my SoB, so I plan on doing that in the same push.
Thanks to everyone for handling this so well, seriously awesome that we can stay constructive as a community \o/.
Lastly, this will be caught by our tooling in the future so this should be the last time this happens (on accident).
Thanks for taking care of this:
Acked-by: Maxime Ripard maxime.ripard@bootlin.com
Maxime
-- Maxime Ripard, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
On Wed, 7 Aug 2019 at 15:21, Sean Paul sean@poorly.run wrote:
From: Sean Paul seanpaul@chromium.org
Hellooo, This has been covered ad nauseam on the m-l and irc, but for the record:
Reviews are a mandatory requirement for patches in drm-misc-next, it's what keeps us all honest in the committer model. The most recent drm-misc-next pull included a handful of patches that were missing reviews. There was absolutely zero nefarious intent, but rules are rules, so we're reverting them.
I feel confident re-applying all of these with my SoB, so I plan on doing that in the same push.
Thanks.
Thanks to everyone for handling this so well, seriously awesome that we can stay constructive as a community \o/.
Lastly, this will be caught by our tooling in the future so this should be the last time this happens (on accident).
Hear, hear.
Sean
Sean Paul (5):
Revert "drm/vgem: drop DRM_AUTH usage from the driver" Revert "drm/msm: drop DRM_AUTH usage from the driver" Revert "drm/nouveau: remove open-coded drm_invalid_op()"
For these three: Acked-by: Emil Velikov emil.velikov@collabora.com
-Emil
On Wed, Aug 07, 2019 at 10:20:53AM -0400, Sean Paul wrote:
From: Sean Paul seanpaul@chromium.org
Hellooo, This has been covered ad nauseam on the m-l and irc, but for the record:
Reviews are a mandatory requirement for patches in drm-misc-next, it's what keeps us all honest in the committer model. The most recent drm-misc-next pull included a handful of patches that were missing reviews. There was absolutely zero nefarious intent, but rules are rules, so we're reverting them.
I feel confident re-applying all of these with my SoB, so I plan on doing that in the same push.
Applied to drm-misc-next with all patches re-applied.
Sean
Thanks to everyone for handling this so well, seriously awesome that we can stay constructive as a community \o/.
Lastly, this will be caught by our tooling in the future so this should be the last time this happens (on accident).
Sean
Sean Paul (5): Revert "Revert "drm/gem: Rename drm_gem_dumb_map_offset() to drm_gem_map_offset()"" Revert "Revert "drm/panfrost: Use drm_gem_map_offset()"" Revert "drm/vgem: drop DRM_AUTH usage from the driver" Revert "drm/msm: drop DRM_AUTH usage from the driver" Revert "drm/nouveau: remove open-coded drm_invalid_op()"
drivers/gpu/drm/drm_dumb_buffers.c | 4 ++-- drivers/gpu/drm/drm_gem.c | 10 +++++++--- drivers/gpu/drm/exynos/exynos_drm_gem.c | 3 +-- drivers/gpu/drm/msm/msm_drv.c | 22 +++++++++++----------- drivers/gpu/drm/nouveau/nouveau_abi16.c | 6 ++++++ drivers/gpu/drm/nouveau/nouveau_abi16.h | 1 + drivers/gpu/drm/nouveau/nouveau_drm.c | 2 +- drivers/gpu/drm/panfrost/panfrost_drv.c | 16 ++-------------- drivers/gpu/drm/vgem/vgem_drv.c | 4 ++-- include/drm/drm_gem.h | 4 ++-- 10 files changed, 35 insertions(+), 37 deletions(-)
-- Sean Paul, Software Engineer, Google / Chromium OS
dri-devel@lists.freedesktop.org