[PATCH 2/2] drm: Move drm_gem ioctl kerneldoc to uapi file

Simona Vetter simona.vetter at ffwll.ch
Mon Jul 14 12:40:28 UTC 2025


On Mon, Jul 14, 2025 at 11:50:32AM +0200, Christian König wrote:
> On 11.07.25 23:55, Simona Vetter wrote:
> > On Fri, Jul 11, 2025 at 10:53:42AM -0400, David Francis wrote:
> >> The drm_gem ioctls were documented in internal file drm_gem.c
> >> instead of uapi header drm.h. Move them there and change to
> >> appropriate kerneldoc formatting.
> >>
> >> Signed-off-by: David Francis <David.Francis at amd.com>
> > 
> > Thanks a lot for taking care of this!
> > 
> > Reviewed-by: Simona Vetter <simona.vetter at ffwll.ch>
> > 
> > I'll leave review for the first patch to folks who care about criu, but it
> > looked good to me too.
> 
> I will take that as an Acked-by.
> 
> Are you ok that we push this into drm-misc-next by the end of the week when we have the IGT test ready?

Aye, sounds like a plan.
-Sima

> 
> The patches for the CRIU code are ready and IIRC there will be a merge
> request made, but it will take quite a while until they are actually
> merged I think.

> 
> Christian.
> 
> > -Sima
> > 
> >> ---
> >>  drivers/gpu/drm/drm_gem.c | 30 -----------------------------
> >>  include/uapi/drm/drm.h    | 40 +++++++++++++++++++++++++++------------
> >>  2 files changed, 28 insertions(+), 42 deletions(-)
> >>
> >> diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
> >> index 3166230d0119..08778a15eefb 100644
> >> --- a/drivers/gpu/drm/drm_gem.c
> >> +++ b/drivers/gpu/drm/drm_gem.c
> >> @@ -820,14 +820,6 @@ long drm_gem_dma_resv_wait(struct drm_file *filep, u32 handle,
> >>  }
> >>  EXPORT_SYMBOL(drm_gem_dma_resv_wait);
> >>  
> >> -/**
> >> - * drm_gem_close_ioctl - implementation of the GEM_CLOSE ioctl
> >> - * @dev: drm_device
> >> - * @data: ioctl data
> >> - * @file_priv: drm file-private structure
> >> - *
> >> - * Releases the handle to an mm object.
> >> - */
> >>  int
> >>  drm_gem_close_ioctl(struct drm_device *dev, void *data,
> >>  		    struct drm_file *file_priv)
> >> @@ -843,17 +835,6 @@ drm_gem_close_ioctl(struct drm_device *dev, void *data,
> >>  	return ret;
> >>  }
> >>  
> >> -/**
> >> - * drm_gem_flink_ioctl - implementation of the GEM_FLINK ioctl
> >> - * @dev: drm_device
> >> - * @data: ioctl data
> >> - * @file_priv: drm file-private structure
> >> - *
> >> - * Create a global name for an object, returning the name.
> >> - *
> >> - * Note that the name does not hold a reference; when the object
> >> - * is freed, the name goes away.
> >> - */
> >>  int
> >>  drm_gem_flink_ioctl(struct drm_device *dev, void *data,
> >>  		    struct drm_file *file_priv)
> >> @@ -893,17 +874,6 @@ drm_gem_flink_ioctl(struct drm_device *dev, void *data,
> >>  	return ret;
> >>  }
> >>  
> >> -/**
> >> - * drm_gem_open_ioctl - implementation of the GEM_OPEN ioctl
> >> - * @dev: drm_device
> >> - * @data: ioctl data
> >> - * @file_priv: drm file-private structure
> >> - *
> >> - * Open an object using the global name, returning a handle and the size.
> >> - *
> >> - * This handle (of course) holds a reference to the object, so the object
> >> - * will not go away until the handle is deleted.
> >> - */
> >>  int
> >>  drm_gem_open_ioctl(struct drm_device *dev, void *data,
> >>  		   struct drm_file *file_priv)
> >> diff --git a/include/uapi/drm/drm.h b/include/uapi/drm/drm.h
> >> index e3940b657e16..e512da8f3baf 100644
> >> --- a/include/uapi/drm/drm.h
> >> +++ b/include/uapi/drm/drm.h
> >> @@ -597,31 +597,47 @@ struct drm_set_version {
> >>  	int drm_dd_minor;
> >>  };
> >>  
> >> -/* DRM_IOCTL_GEM_CLOSE ioctl argument type */
> >> +/**
> >> + * struct drm_gem_close - Argument for &DRM_IOCTL_GEM_CLOSE ioctl.
> >> + * @handle: Handle of the object to be closed.
> >> + * @pad: Padding.
> >> + *
> >> + * Releases the handle to an mm object.
> >> + */
> >>  struct drm_gem_close {
> >> -	/** Handle of the object to be closed. */
> >>  	__u32 handle;
> >>  	__u32 pad;
> >>  };
> >>  
> >> -/* DRM_IOCTL_GEM_FLINK ioctl argument type */
> >> +/**
> >> + * struct drm_gem_flink - Argument for &DRM_IOCTL_GEM_FLINK ioctl.
> >> + * @handle: Handle for the object being named.
> >> + * @name: Returned global name.
> >> + *
> >> + * Create a global name for an object, returning the name.
> >> + *
> >> + * Note that the name does not hold a reference; when the object
> >> + * is freed, the name goes away.
> >> + */
> >>  struct drm_gem_flink {
> >> -	/** Handle for the object being named */
> >>  	__u32 handle;
> >> -
> >> -	/** Returned global name */
> >>  	__u32 name;
> >>  };
> >>  
> >> -/* DRM_IOCTL_GEM_OPEN ioctl argument type */
> >> +/**
> >> + * struct drm_gem_open - Argument for &DRM_IOCTL_GEM_OPEN ioctl.
> >> + * @name: Name of object being opened.
> >> + * @handle: Returned handle for the object.
> >> + * @size: Returned size of the object
> >> + *
> >> + * Open an object using the global name, returning a handle and the size.
> >> + *
> >> + * This handle (of course) holds a reference to the object, so the object
> >> + * will not go away until the handle is deleted.
> >> + */
> >>  struct drm_gem_open {
> >> -	/** Name of object being opened */
> >>  	__u32 name;
> >> -
> >> -	/** Returned handle for the object */
> >>  	__u32 handle;
> >> -
> >> -	/** Returned size of the object */
> >>  	__u64 size;
> >>  };
> >>  
> >> -- 
> >> 2.34.1
> >>
> > 
> 

-- 
Simona Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list