Hmm, it looked like that was on the right track.
Back to the hypothesis that the difference between SNA and UXA that matters is:
diff --git a/src/intel_display.c b/src/intel_display.c index 11d0e2b..e61af86 100644 --- a/src/intel_display.c +++ b/src/intel_display.c @@ -1680,6 +1680,7 @@ intel_mode_fini(intel_screen_private *intel) { struct intel_mode *mode = intel->modes;
+#if 0 while(!list_is_empty(&mode->crtcs)) { xf86CrtcDestroy(list_first_entry(&mode->crtcs, struct intel_crtc, @@ -1691,6 +1692,7 @@ intel_mode_fini(intel_screen_private *intel) struct intel_output, link)->output); } +#endif
if (mode->fb_id) drmModeRmFB(mode->fd, mode->fb_id);
Hmm, it looked like that was on the right track.
Back to the hypothesis that the difference between SNA and UXA that matters is:
diff --git a/src/intel_ display. c b/src/intel_ display. c display. c display. c fini(intel_ screen_ private *intel)
index 11d0e2b..e61af86 100644
--- a/src/intel_
+++ b/src/intel_
@@ -1680,6 +1680,7 @@ intel_mode_
{
struct intel_mode *mode = intel->modes;
+#if 0
while( !list_is_ empty(& mode->crtcs) ) {
xf86CrtcDestr oy(list_ first_entry( &mode-> crtcs,
struct intel_crtc, fini(intel_ screen_ private *intel)
struct intel_output,
link) ->output) ;
@@ -1691,6 +1692,7 @@ intel_mode_
}
+#endif
if (mode->fb_id)
drmModeRmFB( mode->fd, mode->fb_id);