[PATCH v2 1/2] drm/vmwgfx: add local DRM_AUTH check for PRIME TO/FROM HANDLE
Emil Velikov
emil.l.velikov at gmail.com
Fri Aug 2 17:01:16 UTC 2019
From: Emil Velikov <emil.velikov at collabora.com>
Realistically no drivers, but vmwgfx care about the DRM_AUTH flag here.
Follow-up work in this driver will properly isolate primary clients from
different master realms, thus we'll no longer need to parse _any_ ioctl
flags.
Until that work lands, add a local workaround.
v2: Use bitwise or (Deepak)
Cc: VMware Graphics <linux-graphics-maintainer at vmware.com>
Cc: Thomas Hellstrom <thellstrom at vmware.com>
Cc: Deepak Singh Rawat <drawat at vmware.com>
Signed-off-by: Emil Velikov <emil.velikov at collabora.com>
---
I'd like to merge this and the next patch hrough the drm-misc tree. Ack
and rb are appreciated.
Thanks
Emil
---
drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
index cd0d49d8a8da..53afb1d597e8 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_drv.c
@@ -1134,6 +1134,15 @@ static long vmw_generic_ioctl(struct file *filp, unsigned int cmd,
} else if (!drm_ioctl_flags(nr, &flags))
return -EINVAL;
+ /*
+ * Little workaround until the vmwgfx patches providing isolation of
+ * primary clients from different master realms land.
+ * With that work, we'll no longer need to parse _any_ ioctl flags.
+ */
+ if (nr == 0x2d /* DRM_IOCTL_PRIME_HANDLE_TO_FD */ ||
+ nr == 0x2e /* DRM_IOCTL_PRIME_FD_TO_HANDLE */)
+ flags |= DRM_AUTH;
+
vmaster = vmw_master_check(dev, file_priv, flags);
if (IS_ERR(vmaster)) {
ret = PTR_ERR(vmaster);
--
2.21.0
More information about the dri-devel
mailing list