Bug 10280

Summary: Xserver aborts with signal 8 after a few seconds
Product: xorg Reporter: Alexander Eichner <alexeichi>
Component: Driver/nouveauAssignee: Nouveau Project <nouveau>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: Franz.Netykafka
Version: 7.2 (2007.02)   
Hardware: x86 (IA32)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg log with NV_DMA_DEBUG enabled
none
the kernel log for the crash
none
the lspci output
none
Xorg log for SIGSEV crash none

Description Alexander Eichner 2007-03-13 08:39:57 UTC
After login via gdm, the xserver aborts after a few seconds while loading Gnome DE
Comment 1 Alexander Eichner 2007-03-13 08:41:29 UTC
Created attachment 9120 [details]
Xorg log with NV_DMA_DEBUG enabled

the Xorg log
Comment 2 Alexander Eichner 2007-03-13 08:42:13 UTC
Created attachment 9121 [details]
the kernel log for the crash

the kernel log
Comment 3 Alexander Eichner 2007-03-13 08:42:37 UTC
Created attachment 9122 [details]
the lspci output

the lspci output
Comment 4 Alexander Eichner 2007-03-13 09:28:46 UTC
it doesn't work even if the binary driver wasn't loaded before
it works with this patch:

--- sane-nouveau/xf86-video-nouveau/src/nv_driver.c     2007-03-05
14:26:05.000000000 +0100
+++ xf86-video-nouveau/src/nv_driver.c  2007-03-06 15:36:56.000000000 +0100
@@ -1702,8 +1702,7 @@
                else
                        gart_scratch_size = pNv->AGPSize;

-               pNv->AGPScratch = NVAllocateMemory(pNv, NOUVEAU_MEM_AGP,
-                                                       gart_scratch_size);
+               pNv->AGPScratch = NULL;
                if (!pNv->AGPScratch)
                        xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
                                        "Unable to allocate AGP memory\n");

Comment 5 Ben Skeggs 2007-03-13 17:05:55 UTC
I think I've seen this particular bug before, does this patch also fix the problem?

diff --git a/src/nv_exa.c b/src/nv_exa.c
index ed6901b..9eaaa20 100644
--- a/src/nv_exa.c
+++ b/src/nv_exa.c
@@ -331,6 +331,9 @@ static Bool NVUploadToScreen(PixmapPtr pDst,
        h = pDst->drawable.height;
 #endif
 
+       if (src_pitch == 0)
+               return FALSE;
+
        pitch_out = exaGetPixmapPitch(pDst);
        offset_out = NVAccelGetPixmapOffset(pNv, pDst);
        offset_out += y*pitch_out;
Comment 6 Alexander Eichner 2007-03-14 09:50:53 UTC
this patch fixes the SIGFPE but now i sometimes get an SIGSEV (Xorg.log attached) or X hangs (maybe related to #10199)
Comment 7 Alexander Eichner 2007-03-14 09:51:56 UTC
Created attachment 9140 [details]
Xorg log for SIGSEV crash
Comment 8 Alexander Eichner 2007-03-17 10:29:39 UTC
the SIGSEV seems to be related to the Xserver not to nouveau.
I reinstalled the Xorg Xserver shipped with Ubuntu Feisty fawn instead of using a self compiled git one. After i applied the patch suggested in comment #5 nouevau is working now. But it is very slow
Comment 9 Alexander Eichner 2007-04-05 13:48:04 UTC
Problem disappeared after an Xorg update.
Thatswhy I assume it was related to Xorg not to nouveau.
I mark it as resolved with resolution NOTOURBUG
Comment 10 Matthieu CASTET 2007-05-12 02:10:22 UTC
I am hitting the same bug on debian sid (last tested Xorg = 1:7.2-3).
This happen since an update that happen 1 or 2 month ago.

Like comment #2, there nothing special in kernel log.
I have got trace like comment #1, but there not always a X stack trace.

If I try to attach gdb to Xorg, when X crash, I see garbage in the stack trace.

I could trigger the bug under gdm, if I open a menu (for choosing another desktop, ...) an put the mouse on it.


Comment #4 seems the avoid the bug, but comment #5 doesn't.
Comment 11 Matthieu CASTET 2007-05-12 02:11:26 UTC
reasing
Comment 12 Ben Skeggs 2007-06-29 00:42:29 UTC
Should be fixed in latest git.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.