All of lore.kernel.org
 help / color / mirror / Atom feed
From: Pierre Pronchery <khorben-tmMSDyayuCodnm+yROfE0A@public.gmane.org>
To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
Subject: Crash with Xinerama enabled [patch]
Date: Mon, 04 May 2009 01:16:39 +0200	[thread overview]
Message-ID: <49FE25D7.10405@defora.org> (raw)

[-- Attachment #1: Type: text/plain, Size: 1878 bytes --]

			Dear nouveau hackers,

I got as far as figuring out that Xinerama is deprecated now... Too bad
WindowMaker doesn't play well with RandR. While painfully learning about
it, I managed to crash my Xorg 1.5.3 server through the nouveau driver.
The attached patch fixes it.

To reproduce the crash, simply run X with Xinerama enabled.

$ gdb hw/xfree86/Xorg Xorg.core
[...]
Core was generated by `Xorg'.
Program terminated with signal 6, Aborted.
#0  0xbb80d407 in uuid_hash () from /usr/lib/libc.so.12
(gdb) bt
#0  0xbb80d407 in uuid_hash () from /usr/lib/libc.so.12
#1  0x0809a05c in ddxGiveUp () at xf86Init.c:1472
#2  0x08117bec in AbortServer () at log.c:407
#3  0x0811808b in FatalError (
     f=0x8189dd8 "Caught signal %d.  Server aborting\n") at log.c:553
#4  0x080afb45 in xf86SigHandler (signo=-1077945400) at xf86Events.c:593
#5  0xbb85b370 in __opendir2 () from /usr/lib/libc.so.12
#6  0xbb5d0294 in NVLoadPalette (pScrn=0xbb646000, numColors=256,
     indices=0xbb611c00, colors=0xbb649800, pVisual=0xbb62f5b0)
     at nv_driver.c:1890
#7  0x080b4962 in CMapRefreshColors (pmap=0xbb6b6000, defs=256,
     indices=0xbb611c00) at xf86cmap.c:644
#8  0x080b4ddc in CMapReinstallMap (pmap=0xbb6b6000) at xf86cmap.c:517
#9  0x080b5db9 in xf86HandleColormaps (pScreen=0xbb6344e0, maxColors=256,
     sigRGBbits=8, loadPalette=0xbb5d018c <NVLoadPalette>, setOverscan=0,
     flags=<value optimized out>) at xf86cmap.c:216
#10 0xbb5d2a89 in NVScreenInit (scrnIndex=0, pScreen=0xbb6344e0, argc=9,
     argv=0xbfbfe978) at nv_driver.c:2246
#11 0x08069066 in AddScreen (pfnInit=0xbb5d2090 <NVEnterVT+512>, argc=9,
     argv=0xbfbfe978) at main.c:746
#12 0x0809aaaf in InitOutput (pScreenInfo=0x81c6300, argc=9, 
argv=0xbfbfe978)
     at xf86Init.c:1258
#13 0x0806977f in main (argc=9, argv=0xbfbfe978, envp=Cannot access 
memory at address 0x8
) at main.c:358

HTH,
-- 
khorben

[-- Attachment #2: nouveau.diff --]
[-- Type: text/plain, Size: 409 bytes --]

diff --git a/src/nv_driver.c b/src/nv_driver.c
index 92232dd..920efc4 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -1927,7 +1927,8 @@ NVLoadPalette(ScrnInfoPtr pScrn, int numColors, int *indices,
 		}
 
 		/* Make the change through RandR */
-		RRCrtcGammaSet(crtc->randr_crtc, lut_r, lut_g, lut_b);
+		if(crtc->randr_crtc != NULL)
+			RRCrtcGammaSet(crtc->randr_crtc, lut_r, lut_g, lut_b);
 	}
 }
 

[-- Attachment #3: Type: text/plain, Size: 181 bytes --]

_______________________________________________
Nouveau mailing list
Nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org
http://lists.freedesktop.org/mailman/listinfo/nouveau

                 reply	other threads:[~2009-05-03 23:16 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49FE25D7.10405@defora.org \
    --to=khorben-tmmsdyayucodnm+yrofe0a@public.gmane.org \
    --cc=nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.