xf86-video-intel: src/sna/sna_accel.c src/sna/sna_driver.c

Chris Wilson ickle at kemper.freedesktop.org
Fri Mar 1 07:36:49 PST 2013


 src/sna/sna_accel.c  |    6 ++++++
 src/sna/sna_driver.c |    5 +++--
 2 files changed, 9 insertions(+), 2 deletions(-)

New commits:
commit 904af323914e05830f17621a78b6e55b371ae5fc
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Fri Mar 1 15:34:45 2013 +0000

    sna: Assert that we do not resurrect stale pixmap across a server regen
    
    References: https://bugs.freedesktop.org/show_bug.cgi?id=56608
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_accel.c b/src/sna/sna_accel.c
index fd2337f..328ce30 100644
--- a/src/sna/sna_accel.c
+++ b/src/sna/sna_accel.c
@@ -955,6 +955,9 @@ sna_pixmap_create_scratch(ScreenPtr screen,
 	priv->header = true;
 	sna_damage_all(&priv->gpu_damage, width, height);
 
+	assert(to_sna_from_pixmap(pixmap) == sna);
+	assert(pixmap->drawable.pScreen == screen);
+
 	return pixmap;
 }
 
@@ -1265,6 +1268,9 @@ static PixmapPtr sna_create_pixmap(ScreenPtr screen,
 	priv->create = flags;
 	priv->ptr = ptr;
 
+	assert(to_sna_from_pixmap(pixmap) == sna);
+	assert(pixmap->drawable.pScreen == screen);
+
 	return pixmap;
 
 fallback:
diff --git a/src/sna/sna_driver.c b/src/sna/sna_driver.c
index 2250e92..bf60fcf 100644
--- a/src/sna/sna_driver.c
+++ b/src/sna/sna_driver.c
@@ -836,8 +836,7 @@ static Bool sna_early_close_screen(CLOSE_SCREEN_ARGS_DECL)
 
 static Bool sna_late_close_screen(CLOSE_SCREEN_ARGS_DECL)
 {
-	ScrnInfoPtr scrn = xf86ScreenToScrn(screen);
-	struct sna *sna = to_sna(scrn);
+	struct sna *sna = to_sna_from_screen(screen);
 	DepthPtr depths;
 	int d;
 
@@ -922,6 +921,8 @@ sna_screen_init(SCREEN_INIT_ARGS_DECL)
 	assert(sna->scrn == scrn);
 	assert(scrn->pScreen == NULL); /* set afterwards */
 
+	assert(sna->freed_pixmap == NULL);
+
 	if (!sna_register_all_privates())
 		return FALSE;
 


More information about the xorg-commit mailing list