dri-devel Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm: Allow CAP_DUMB_BUFFERS on !MODESET
@ 2018-05-04 14:25 Ezequiel Garcia
  2018-05-07  9:36 ` Maarten Lankhorst
  2018-05-08  4:52 ` [PATCH v2] " Ezequiel Garcia
  0 siblings, 2 replies; 7+ messages in thread
From: Ezequiel Garcia @ 2018-05-04 14:25 UTC (permalink / raw)
  To: Gustavo Padovan, Maarten Lankhorst, Sean Paul
  Cc: kernel, Ezequiel Garcia, dri-devel

It's perfectly possible to get dumb buffers out of drivers
that don't support modeset. This is the case of vgem,
which can be used to export dmabuf to run various tests.
Therefore, move the dumb buffer capability check before
the mode set check.

Inspired by commit f3f4c4d68a28 ("drm: Allow CAP_PRIME on !MODESET").

Fixes: d5264ed3823a ("drm: Return -ENOTSUPP when called for KMS cap with a non-KMS driver")
Signed-off-by: Ezequiel Garcia <ezequiel@collabora.com>
---
 drivers/gpu/drm/drm_ioctl.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
index af782911c505..deac011a0c25 100644
--- a/drivers/gpu/drm/drm_ioctl.c
+++ b/drivers/gpu/drm/drm_ioctl.c
@@ -244,6 +244,9 @@ static int drm_getcap(struct drm_device *dev, void *data, struct drm_file *file_
 	case DRM_CAP_SYNCOBJ:
 		req->value = drm_core_check_feature(dev, DRIVER_SYNCOBJ);
 		return 0;
+	case DRM_CAP_DUMB_BUFFER:
+		req->value |= dev->driver->dumb_create ? 1 : 0;
+		return 0;
 	}
 
 	/* Other caps only work with KMS drivers */
@@ -251,10 +254,6 @@ static int drm_getcap(struct drm_device *dev, void *data, struct drm_file *file_
 		return -ENOTSUPP;
 
 	switch (req->capability) {
-	case DRM_CAP_DUMB_BUFFER:
-		if (dev->driver->dumb_create)
-			req->value = 1;
-		break;
 	case DRM_CAP_VBLANK_HIGH_CRTC:
 		req->value = 1;
 		break;
-- 
2.16.3

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2018-05-09  8:11 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-04 14:25 [PATCH] drm: Allow CAP_DUMB_BUFFERS on !MODESET Ezequiel Garcia
2018-05-07  9:36 ` Maarten Lankhorst
2018-05-08  4:47   ` Ezequiel Garcia
2018-05-08  4:52 ` [PATCH v2] " Ezequiel Garcia
2018-05-08  7:55   ` Daniel Vetter
2018-05-08 23:42     ` Ezequiel Garcia
2018-05-09  8:11       ` Daniel Vetter

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox