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

Chris Wilson ickle at kemper.freedesktop.org
Wed Dec 20 08:28:52 UTC 2017


 src/sna/sna_driver.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

New commits:
commit 032a581fd7037c9d2e5fdc91d325db6a7e133b7f
Author: Chris Wilson <chris at chris-wilson.co.uk>
Date:   Wed Dec 20 08:25:25 2017 +0000

    sna: Fixup sna->scrn == scrn assert for early initialisation
    
    Very early on when creating the sna privates, we call to_sna(scrn) before
    we have even set the sna->scrn backpointer. Reorder the code such that
    we always set sna->scrn before the first to_sna() so that the
    assert(to_sna(scrn)->scrn == scrn) can always hold.
    
    Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

diff --git a/src/sna/sna_driver.c b/src/sna/sna_driver.c
index 5492c59d..2643e6c8 100644
--- a/src/sna/sna_driver.c
+++ b/src/sna/sna_driver.c
@@ -554,12 +554,12 @@ static Bool sna_pre_init(ScrnInfoPtr scrn, int probe)
 		probe = (uintptr_t)scrn->driverPrivate & 1;
 		sna->info = (void *)((uintptr_t)scrn->driverPrivate & ~3);
 		scrn->driverPrivate = sna;
+		sna->scrn = scrn;
 
 		sna->cpu_features = sna_cpu_detect();
 		sna->acpi.fd = sna_acpi_open();
 	}
 	sna = to_sna(scrn);
-	sna->scrn = scrn;
 	sna->pEnt = pEnt;
 	sna->flags = probe;
 


More information about the xorg-commit mailing list