drm/vmwgfx: Define an overlaid handle_close ioctl.
authorThomas Hellstrom <thellstrom@vmware.com>
Thu, 23 Mar 2017 22:26:16 +0000 (15:26 -0700)
committerSinclair Yeh <syeh@vmware.com>
Fri, 31 Mar 2017 22:21:18 +0000 (15:21 -0700)
Instead of providing an ioctl for each handle type, provide a single
handle_close ioctl, and reuse the UNREF_DMABUF ioctl.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Sinclair Yeh <syeh@vmware.com>
include/uapi/drm/vmwgfx_drm.h

index d325a4107916ad512df517b1ae21dab318f6c13c..d9dfde9aa757aad51dff8d264b7d43b1170028c5 100644 (file)
@@ -41,6 +41,7 @@ extern "C" {
 #define DRM_VMW_GET_PARAM            0
 #define DRM_VMW_ALLOC_DMABUF         1
 #define DRM_VMW_UNREF_DMABUF         2
+#define DRM_VMW_HANDLE_CLOSE         2
 #define DRM_VMW_CURSOR_BYPASS        3
 /* guarded by DRM_VMW_PARAM_NUM_STREAMS != 0*/
 #define DRM_VMW_CONTROL_STREAM       4
@@ -1092,6 +1093,29 @@ union drm_vmw_extended_context_arg {
        struct drm_vmw_context_arg rep;
 };
 
+/*************************************************************************/
+/*
+ * DRM_VMW_HANDLE_CLOSE - Close a user-space handle and release its
+ * underlying resource.
+ *
+ * Note that this ioctl is overlaid on the DRM_VMW_UNREF_DMABUF Ioctl.
+ * The ioctl arguments therefore need to be identical in layout.
+ *
+ */
+
+/**
+ * struct drm_vmw_handle_close_arg
+ *
+ * @handle: Handle to close.
+ *
+ * Argument to the DRM_VMW_HANDLE_CLOSE Ioctl.
+ */
+struct drm_vmw_handle_close_arg {
+       __u32 handle;
+       __u32 pad64;
+};
+
+
 #if defined(__cplusplus)
 }
 #endif