[openchrome-devel] xf86-video-openchrome: Branch 'main' - 2 commits - configure.ac src/via_driver.c

Kevin Brace kevinbrace at kemper.freedesktop.org
Thu Oct 8 19:43:45 UTC 2020


 configure.ac     |    2 +-
 src/via_driver.c |   16 ++++++++++------
 2 files changed, 11 insertions(+), 7 deletions(-)

New commits:
commit e84839b238d730758ceca141d1bd1541f4fdf837
Author: Kevin Brace <kevinbrace at gmx.com>
Date:   Thu Oct 8 12:43:26 2020 -0700

    Version bumped to 0.6.316
    
    Fixes X Server crash issue if --disable-kms compilation option was
    used to generate compilation script for code compilation.
    
    Signed-off-by: Kevin Brace <kevinbrace at gmx.com>

diff --git a/configure.ac b/configure.ac
index 34ddc15..f01f828 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
 # Initialize Autoconf
 AC_PREREQ([2.60])
 AC_INIT([xf86-video-openchrome],
-        [0.6.315],
+        [0.6.316],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver/openchrome],
         [xf86-video-openchrome])
 
commit f547b424c61b3f4c2328eae2dd4320cc74886bc8
Author: Kevin Brace <kevinbrace at gmx.com>
Date:   Thu Oct 8 12:43:09 2020 -0700

    Check for KMS status before calling drmmode_uevent_*
    
    Not doing so was leading to an X Server crash during boot time if
    --disable-kms switch was used to generate compilation script for
    compiling the code.
    
    Signed-off-by: Kevin Brace <kevinbrace at gmx.com>

diff --git a/src/via_driver.c b/src/via_driver.c
index d557633..086cce4 100644
--- a/src/via_driver.c
+++ b/src/via_driver.c
@@ -1340,8 +1340,11 @@ VIACreateScreenResources(ScreenPtr pScreen)
     rootPixmap = pScreen->GetScreenPixmap(pScreen);
 
 #ifdef OPENCHROMEDRI
-    drmmode_uevent_init(pScrn, &pVia->drmmode);
+    if (pVia->KMS) {
+        drmmode_uevent_init(pScrn, &pVia->drmmode);
+    }
 #endif
+
     surface = drm_bo_map(pScrn, pVia->drmmode.front_bo);
     if (!surface)
         return FALSE;
@@ -1382,6 +1385,12 @@ VIACloseScreen(CLOSE_SCREEN_ARGS_DECL)
 
     DEBUG(xf86DrvMsg(pScrn->scrnIndex, X_INFO, "VIACloseScreen\n"));
 
+#ifdef OPENCHROMEDRI
+    if (pVia->KMS) {
+        drmmode_uevent_fini(pScrn, &pVia->drmmode);
+    }
+#endif /* OPENCHROMEDRI */
+
     if (pVia->directRenderingType != DRI_2)
         viaExitVideo(pScrn);
 
@@ -1399,9 +1408,6 @@ VIACloseScreen(CLOSE_SCREEN_ARGS_DECL)
     if (pScrn->vtSema)
         VIALeaveVT(VT_FUNC_ARGS(0));
 
-#ifdef OPENCHROMEDRI
-    drmmode_uevent_fini(pScrn, &pVia->drmmode);
-#endif
     xf86_cursors_fini(pScreen);
 
     if (pVia->drmmode.front_bo) {
@@ -1426,8 +1432,6 @@ VIACloseScreen(CLOSE_SCREEN_ARGS_DECL)
         VIADRICloseScreen(pScreen);
 
     if (pVia->KMS) {
-        drmmode_uevent_fini(pScrn, &pVia->drmmode);
-
         if (drmDropMaster(pVia->drmmode.fd))
             xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
                         "drmDropMaster failed: %s\n",


More information about the openchrome-devel mailing list