diff options
-rw-r--r-- | src/intel_display.c | 4 | ||||
-rw-r--r-- | src/sna/sna_accel.c | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/src/intel_display.c b/src/intel_display.c index 21971835..17168e5b 100644 --- a/src/intel_display.c +++ b/src/intel_display.c @@ -1911,6 +1911,10 @@ intel_mode_close(intel_screen_private *intel) while (has_pending_events(mode->fd)) drmHandleEvent(mode->fd, &mode->event_context); + + RemoveBlockAndWakeupHandlers((BlockHandlerProcPtr)NoopDDA, + drm_wakeup_handler, mode); + RemoveGeneralSocket(mode->fd); } void diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c index fd301c70..9bc6fe35 100644 --- a/src/sna/sna_accel.c +++ b/src/sna/sna_accel.c @@ -14377,6 +14377,7 @@ void sna_accel_close(struct sna *sna) } DeleteCallback(&FlushCallback, sna_accel_flush_callback, sna); + RemoveGeneralSocket(sna->kgem.fd); kgem_cleanup_cache(&sna->kgem); } |