[Intel-gfx] [PATCH xf86-video 2/2] dri: fix leakage of FB when closing the screen

Imre Deak imre.deak at intel.com
Fri Aug 31 13:31:51 CEST 2012


Calling drmModeRmFB is only allowed in DRM master mode. Since leaving
the VT also drops master mode we need to remove the FB before calling
I830LeaveVT.

This is only a real leak in case of a server reset, otherwise the server
process will exit anyway and the kernel will clean up the FB.

Signed-off-by: Imre Deak <imre.deak at intel.com>
---
 src/intel_driver.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/intel_driver.c b/src/intel_driver.c
index c5be679..ca8e530 100644
--- a/src/intel_driver.c
+++ b/src/intel_driver.c
@@ -1049,10 +1049,6 @@ static Bool I830CloseScreen(CLOSE_SCREEN_ARGS_DECL)
 	I830UeventFini(scrn);
 #endif
 
-	if (scrn->vtSema == TRUE) {
-		I830LeaveVT(VT_FUNC_ARGS(0));
-	}
-
 	DeleteCallback(&FlushCallback, intel_flush_callback, scrn);
 
 	intel_glamor_close_screen(screen);
@@ -1082,6 +1078,10 @@ static Bool I830CloseScreen(CLOSE_SCREEN_ARGS_DECL)
 		intel->front_buffer = NULL;
 	}
 
+	if (scrn->vtSema == TRUE) {
+		I830LeaveVT(VT_FUNC_ARGS(0));
+	}
+
 	intel_batch_teardown(scrn);
 
 	if (INTEL_INFO(intel)->gen >= 40)
-- 
1.7.9.5




More information about the Intel-gfx mailing list