xf86-video-intel: 2 commits - src/i830_driver.c src/i830.h

Zhenyu Wang zhen at kemper.freedesktop.org
Mon Aug 25 19:18:01 PDT 2008


 src/i830.h        |    3 ++-
 src/i830_driver.c |    7 ++++---
 2 files changed, 6 insertions(+), 4 deletions(-)

New commits:
commit c889198ab54336248a03050ad410254912d79bb7
Author: Zhenyu Wang <zhenyu.z.wang at intel.com>
Date:   Tue Aug 26 10:12:21 2008 +0800

    Fix X exit crash in NoAccel
    
    NoAccel should still be needed for performance evaluation,
    so don't crash me when exit.

diff --git a/src/i830.h b/src/i830.h
index 30b0bcf..f0efc4e 100644
--- a/src/i830.h
+++ b/src/i830.h
@@ -934,7 +934,8 @@ i830_wait_ring_idle(ScrnInfoPtr pScrn)
 {
    I830Ptr pI830 = I830PTR(pScrn);
 
-   I830WaitLpRing(pScrn, pI830->LpRing->mem->size - 8, 0);
+   if (pI830->accel != ACCEL_NONE)
+       I830WaitLpRing(pScrn, pI830->LpRing->mem->size - 8, 0);
 }
 
 static inline int i830_fb_compression_supported(I830Ptr pI830)
commit 0929a191ae36473acb0244a818098e4acf26d675
Author: Zhenyu Wang <zhenyu.z.wang at intel.com>
Date:   Tue Aug 26 10:01:23 2008 +0800

    Destroy bufmgr after allocation finish
    
    Fixed X exit crash for me, allocation reset will
    unreference bo which still requires bufmgr to be live.

diff --git a/src/i830_driver.c b/src/i830_driver.c
index 2ce8942..afce718 100644
--- a/src/i830_driver.c
+++ b/src/i830_driver.c
@@ -3786,9 +3786,6 @@ I830CloseScreen(int scrnIndex, ScreenPtr pScreen)
       I830LeaveVT(scrnIndex, 0);
    }
 
-   dri_bufmgr_destroy(pI830->bufmgr);
-   pI830->bufmgr = NULL;
-
    if (pI830->devicesTimer)
       TimerCancel(pI830->devicesTimer);
    pI830->devicesTimer = NULL;
@@ -3828,6 +3825,10 @@ I830CloseScreen(int scrnIndex, ScreenPtr pScreen)
    xf86_cursors_fini (pScreen);
 
    i830_allocator_fini(pScrn);
+
+   dri_bufmgr_destroy(pI830->bufmgr);
+   pI830->bufmgr = NULL;
+
 #ifdef XF86DRI
    if (pI830->directRenderingOpen) {
 #ifdef DAMAGE


More information about the xorg-commit mailing list