[Intel-gfx] [PATCH] drm/i915/fbdev: Actually configure untiled displays

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Wed Apr 24 07:52:19 UTC 2019


Op 24-04-2019 om 02:50 schreef Dave Airlie:
> This patch broke userspace. I'm reverting it.
>
> I know userspace was broken, but since it's a userspace lots of people
> are using we shouldn't break it.
>
> We either need to add this as a config option that we can let people
> pick the breakage, or detect broken userspace somehow and magic around
> it.
>
> But breaking it isn't happening here. I reported this weeks ago, and I
> got regression dodging behaviour.

What about this?

I still think this has to be fixed in userspace, but meh..
-----8<-------
diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
index 687943df58e1..a89161eb9a15 100644
--- a/drivers/gpu/drm/drm_ioctl.c
+++ b/drivers/gpu/drm/drm_ioctl.c
@@ -97,6 +97,15 @@
  * broken.
  */
 
+/*
+ * X.org ships with a modesetting driver that uses atomic in the wrong way,
+ * causing issues with initialisation, rotation and life in general
+ */
+static bool drm_disable_atomic;
+module_param_named(disable_atomic, drm_disable_atomic, bool, 0644);
+MODULE_PARM_DESC(disable_atomic, "Disable support for atomic to work around broken userspace.");
+
+
 /*
  * Get the bus id.
  *
@@ -325,7 +334,7 @@ drm_setclientcap(struct drm_device *dev, void *data, struct drm_file *file_priv)
 		file_priv->universal_planes = req->value;
 		break;
 	case DRM_CLIENT_CAP_ATOMIC:
-		if (!drm_core_check_feature(dev, DRIVER_ATOMIC))
+		if (!drm_core_check_feature(dev, DRIVER_ATOMIC) || drm_disable_atomic)
 			return -EOPNOTSUPP;
 		if (req->value > 1)
 			return -EINVAL;



More information about the Intel-gfx mailing list