[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#572268: xserver-xorg-core: Crash, Segmentation fault, VidModeSetGamma+0x67, xf86ChangeGamma+0x4b



On Wed, Mar 03, 2010 at 01:22:05AM +0100, Cyril Brulebois wrote:
> Cyril Brulebois <kibi@debian.org> (03/03/2010):
> > Heh. Please tell us if you find another (smaller) testcase that
> > triggers this bug. :)
> 
> That still holds. ;)

I've failed in providing a smaller testcase.

> > Could it be possible to get a full backtrace?
> >   http://wiki.debian.org/HowToGetABacktrace

I hope the attachment is the thing.

> The code being quite trivial, we might not need this in the end.
> 
> Could you please apply the attached patch against the “xorg-server”
> source package and see whether that fixes your crash?

Huh, Eee PC doesn't compile as fast as I thought...

I've recompiled the package. Installed it. /usr/bin/Xorg md5sum has
changed, so I suppose it has been actually installed.

Doing so wasn't easy as:
$ DEB_BUILD_OPTIONS="nostrip noopt" fakeroot apt-get -b source xorg-server
doesn't end successfully. It stops with:
/dix/xtest/init: FAIL: xtest
========================================================================
1 of 3 tests failed
[...more info...]

It continued after issuing manually:
dpkg-buildpackage -uc -nc


After applying the patch Xorg still crashes.


One interesting thing is that when I launch UT with both monitors on it
doesn't crash. It happens when I leave only the VGA1 on (eg. using
xrandr).

And now I know why I haven't noticed it earlier. Generally I don't start
my day with a UT session. I switch from the X vt to a text one and back
many times a day.  During the first switch back LVDS1 is left on, even
though it stops being updated with new graphics (text actually).

I think it's some kind of another bug it is left on.

-- 
Marcin Szewczyk                       http://wodny.org
mailto:Marcin.Szewczyk@wodny.borg  <- remove b / usuń b
xmpp:wodny@ubuntu.pl                  xmpp:wodny@jabster.pl
Core was generated by `/usr/bin/X -nolisten tcp :0 -auth /tmp/serverauth.qJ8qH5aYEb'.
Program terminated with signal 6, Aborted.
#0  0xb7f18424 in __kernel_vsyscall ()
#0  0xb7f18424 in __kernel_vsyscall ()
No symbol table info available.
#1  0xb7c458e0 in *__GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
        resultvar = <value optimized out>
        pid = -1210720268
        selftid = 3290
#2  0xb7c48e15 in *__GI_abort () at abort.c:88
        act = {__sigaction_handler = {sa_handler = 0xbfa0412c, sa_sigaction = 0xbfa0412c}, sa_mask = {__val = {3084252096, 3081038302, 3, 153677396, 3214950816, 
              3214950804, 153677396, 3081404952, 153650472, 3214950880, 3086182000, 134586064, 3214950744, 0, 0, 3084247028, 3084252096, 134636960, 3214950744, 
              3083352689, 0, 3080880234, 3084252096, 364, 360, 153287232, 16, 136623876, 3081438028, 153286880, 3084247028, 153286880}}, sa_flags = 153286880, 
          sa_restorer = 0xbfa04194}
        sigs = {__val = {32, 0 <repeats 31 times>}}
#3  0x080ce901 in ddxGiveUp () at ../../../../hw/xfree86/common/xf86Init.c:1214
        i = 1
#4  0x080ce9d3 in AbortDDX () at ../../../../hw/xfree86/common/xf86Init.c:1258
        i = 1
#5  0x080bdd46 in AbortServer () at ../../os/log.c:404
No locals.
#6  0x080be0f2 in FatalError (f=0x82179fc "Caught signal %d (%s). Server aborting\n") at ../../os/log.c:529
        args = 0xbfa042b4 "\v"
        beenhere = 1
#7  0x080b94a1 in OsSigHandler (signo=11, sip=0xbfa042dc, unused=0xbfa0435c) at ../../os/osinit.c:156
No locals.
#8  <signal handler called>
No symbol table info available.
#9  0x0819aaee in xf86RandR12ChangeGamma (scrnIndex=0, gamma=...) at ../../../../hw/xfree86/modes/xf86RandR12.c:1723
        points = 0x928f620
        red = 0x824c358
        green = 0xb7d5f3c0
        blue = 0xb7c8b1ae
        pScrn = 0x9289688
        config = 0x928a9c0
        crtc = 0xb7f36670
        size = 136542944
#10 0x081d7c26 in xf86ChangeGamma (pScreen=0x928f4d0, gamma=...) at ../../../../hw/xfree86/common/xf86cmap.c:1167
        pScrn = 0x9289688
#11 0x081db490 in VidModeSetGamma (scrnIndex=0, red=2.4000001, green=2.4000001, blue=2.4000001) at ../../../../hw/xfree86/common/xf86VidMode.c:469
        pScrn = 0x9289688
        gamma = {red = 2.4000001, green = 2.4000001, blue = 2.4000001}
#12 0xb7b3ac4e in ProcXF86VidModeSetGamma (client=0x94b1c10) at ../../../../../hw/xfree86/dixmods/extmod/xf86vmode.c:1471
        stuff = 0x94c8b58
#13 0xb7b3b8bd in ProcXF86VidModeDispatch (client=0x94b1c10) at ../../../../../hw/xfree86/dixmods/extmod/xf86vmode.c:1721
        stuff = 0x94c8b58
#14 0x0808c2ef in Dispatch () at ../../dix/dispatch.c:439
        clientReady = 0x944b9f8
        result = 0
        client = 0x94b1c10
        nready = 0
        icheck = 0x824cd3c
        start_tick = 160
#15 0x08066b63 in main (argc=6, argv=0xbfa04884, envp=0xbfa048a0) at ../../dix/main.c:285
        i = 1
        alwaysCheckForInput = {0, 1}



(gdb) frame 9
#9  0x0819aaee in xf86RandR12ChangeGamma (scrnIndex=0, gamma=...) at ../../../../hw/xfree86/modes/xf86RandR12.c:1723
1723        RRCrtcPtr crtc = config->output[config->compat_output]->crtc->randr_crtc;
(gdb) info args
scrnIndex = 0
gamma = {red = 2.4000001, green = 2.4000001, blue = 2.4000001}
(gdb) info locals
points = 0x928f620
red = 0x824c358
green = 0xb7d5f3c0
blue = 0xb7c8b1ae
pScrn = 0x9289688
config = 0x928a9c0
crtc = 0xb7f36670
size = 136542944


Reply to: