summaryrefslogtreecommitdiff
path: root/src/sna/sna.h
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2014-10-06 21:37:14 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2014-10-07 10:27:35 +0100
commit9ed1ac8b506509be410c12870397417c7638886e (patch)
tree0f16eda5f6913a7b6508a45112acdba93f138c28 /src/sna/sna.h
parentdff59000d43c5449b3ed79ff144236c17b507bd6 (diff)
sna: Wrap rrGetInfo so that we can probe when udev is not active
If the ddx is configured without udev support, we do not receive notifications when the MST topology is changed. This leads us to query the kernel for bad connectors, and so we end up reporting an unknown connection status for them, which the user and client often find confusing. However, we can not simply act upon the detection failure as we are too deep inside the callback chain and cannot change the arrays of known connectors whilst iterating over them. A neat compromise is to hook into the rrGetInfo call chain and poll for MST changes before we report back the current configuration. References: https://bugs.freedesktop.org/show_bug.cgi?id=84718 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (limited to 'src/sna/sna.h')
-rw-r--r--src/sna/sna.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/sna/sna.h b/src/sna/sna.h
index e0356343..4cd85d19 100644
--- a/src/sna/sna.h
+++ b/src/sna/sna.h
@@ -312,6 +312,8 @@ struct sna {
struct udev_monitor *backlight_monitor;
pointer backlight_handler;
#endif
+
+ Bool (*rrGetInfo)(ScreenPtr, Rotation *);
} mode;
struct {