Bug 35037 - xserver-xorg: crashes with some applications: malloc memory corruption
Summary: xserver-xorg: crashes with some applications: malloc memory corruption
Status: CLOSED WONTFIX
Alias: None
Product: xorg
Classification: Unclassified
Component: Server/General (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: Xorg Project Team
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-05 09:44 UTC by Johannes Berg
Modified: 2015-06-22 07:54 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments

Description Johannes Berg 2011-03-05 09:44:26 UTC
Cyril (whom I added to CC) asked me to report the bug here, it's a copy of http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=615959

X configuration / logs are at that URL.

Basically, X crashes with the following backtrace:


#0  0x00007f9ac93a1165 in raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007f9ac93a3f70 in abort () at abort.c:92
#2  0x00007f9ac93d725b in __libc_message (do_abort=<value optimized out>, fmt=<value optimized out>) at ../sysdeps/unix/sysv/linux/libc_fatal.c:189
#3  0x00007f9ac93e0ab6 in malloc_printerr (action=3, str=0x7f9ac9494f70 "malloc(
): memory corruption", ptr=<value optimized out>) at malloc.c:6267
#4  0x00007f9ac93e3b4d in _int_malloc (av=0x7f9ac96cce40, bytes=<value optimized out>) at malloc.c:4396
#5  0x00007f9ac93e4ef2 in __libc_calloc (n=<value optimized out>, elem_size=<value optimized out>) at malloc.c:4066
#6  0x00000000004d1d91 in DeviceFocusEvent (dev=0xf54ad0, type=10, mode=0, detail=2, pWin=0x1409d90) at ../../Xi/exevents.c:1236
#7  0x0000000000492792 in DeviceFocusEvents (pDev=0xf54ad0, from=<value optimized out>, to=<value optimized out>, mode=0) at ../../dix/enterleave.c:1347
#8  DoFocusEvents (pDev=0xf54ad0, from=<value optimized out>, to=<value optimized out>, mode=0) at ../../dix/enterleave.c:1393
#9  0x00000000004418e1 in SetInputFocus (client=<value optimized out>, dev=0xf54ad0, focusID=31457350, revertTo=2 '\002', ctime=<value optimized out>, 
    followOK=<value optimized out>) at ../../dix/events.c:4455
#10 0x0000000000432e19 in Dispatch () at ../../dix/dispatch.c:432


after glibc printed that it detected memory corruption.


This happens when I start libreoffice, abiword or gimp with a document/image to open.

It also happens only when the driver is nouveau, and only when I had my second screen plugged in when starting the X server. Oddly, when I hotplug the second monitor while the X server is running, starting libreoffice or such doesn't crash the X server. When I don't have a second monitor, it also doesn't crash.

Cyril had asked me to try vesa, but that refused to start with a second monitor (just flickering), and as expected doesn't crash when I just have my laptop's screen, no external monitor.

Also note: I have seen the kernel crash due to what appeared to be memory corruption, so I was willing to blame it on my 2.6.38-rc kernel that I was running. However, if I now go back to 2.6.37 (vanilla) the same crashes occur.
Comment 1 Johannes Berg 2011-03-05 09:45:08 UTC
Ok, forgot the versions, sorry. For some reason the version field doesn't seem to have the right numbers?


$ apt-show-versions |grep xserver-xorg
xserver-xorg/unstable uptodate 1:7.6+4
xserver-xorg-core/experimental uptodate 2:1.9.99.903-1
xserver-xorg-core-dbg/experimental uptodate 2:1.9.99.903-1
xserver-xorg-dev/unstable uptodate 2:1.9.4-3
xserver-xorg-input-evdev/experimental uptodate 1:2.6.0-3
xserver-xorg-input-kbd/experimental uptodate 1:1.5.99.901-1+exp1
xserver-xorg-input-mouse/experimental uptodate 1:1.6.99.901-1+exp1
xserver-xorg-input-synaptics/experimental uptodate 1.3.99.901-1+exp1
xserver-xorg-video-nouveau/experimental uptodate 1:0.0.16+git20101210+8bb8231-2+exp2
xserver-xorg-video-nouveau-dbg/experimental uptodate 1:0.0.16+git20101210+8bb8231-2+exp2
xserver-xorg-video-vesa/experimental uptodate 1:2.3.0-5+exp2


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.