X server crash when resizing windows in KDE
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
fglrx-installer (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
I'm using KDE 4.8.5 on Precise on a box with a AMD Radeon HD 7560D graphics card. Desktop effects are enabled. When resizing windows and (more rarely) also during various other activities (such as closing a window), X crashes. This isn't completely deterministic, but if I open a handful of windows and resize them, I can reliably produce an X crash with return to the login screen in far less than a minute.
I'm not 100% sure I'm reporting the right module. I guess the question is whether the Radeon driver or libpixman, but I'm sure we'll figure that out soon... I'd be glad for any pointers, this is obviously really annoying.
$ lsb_release -rd
Description: Ubuntu 12.04.2 LTS
Release: 12.04
$ fglrxinfo
display: :4 screen: 0
OpenGL vendor string: Advanced Micro Devices, Inc.
OpenGL renderer string: AMD Radeon HD 7560D
OpenGL version string: 4.2.11903 Compatibility Profile Context
$ apt-cache policy fglrx-updates
fglrx-updates:
Installed: 2:9.000-0ubuntu0.3
Candidate: 2:9.000-0ubuntu0.3
Version table:
*** 2:9.000-0ubuntu0.3 0
500 http://
100 /var/lib/
2:
500 http://
Backtrace, produced via ssh-in and gdb attachment:
Program received signal SIGSEGV, Segmentation fault.
pixman_blt_sse2 (src_bits=
src_
4524 ../../pixman/
(gdb) bt full
#0 pixman_blt_sse2 (src_bits=
src_
w = <optimized out>
s = 0x7f23c01c1788 <Address 0x7f23c01c1788 out of bounds>
d = 0x7f23bdef8000 ""
src_bytes = 0x7f23c01c2388 <Address 0x7f23c01c2388 out of bounds>
dst_bytes = 0x7f23bdef8c00 ""
byte_width = 2872
#1 0x00007f23e3cdb1eb in pixman_blt_sse2 (height=511, width=718, dest_y=0, dest_x=0, src_y=-30, src_x=-30, dst_bpp=32, src_bpp=32, dst_stride=768,
src_stride=768, dst_bits=
No locals.
#2 sse2_blt (imp=0x7f23e58f
src_y=-30, dest_x=0, dest_y=0, width=718, height=511) at ../../pixman/
No locals.
#3 0x00007f23e3c71602 in pixman_blt (src_bits=
src_
No locals.
#4 0x00007f23dee5ae29 in fbCopyNtoN (pSrcDrawable=
nbox=<optimized out>, dx=472, dy=177, reverse=0, upsidedown=0, bitplane=0, closure=0x0) at ../../fb/
alu = <optimized out>
pm = 4294967295
src = 0x7f23c01d8000
srcStride = 768
srcBpp = 32
srcXoff = -502
srcYoff = -207
dst = 0x7f23bdef8000
dstStride = 768
dstBpp = 32
dstXoff = 0
dstYoff = 0
#5 0x00007f23dcfbe801 in ?? () from /usr/lib/
No symbol table info available.
#6 0x00007f23dcfc08c5 in ?? () from /usr/lib/
No symbol table info available.
#7 0x00007f23e4cf6464 in damageComposite (op=1 '\001', pSrc=0x7f23e71e
yDst=0, width=718, height=511) at ../../.
pScreen = <optimized out>
ps = 0x7f23e5b1d930
pScrPriv = 0x7f23e5b32730
#8 0x00007f23e4cb9c6d in compNewPixmap (pWin=<optimized out>, x=<optimized out>, y=<optimized out>, w=718, h=511) at ../../composite
pDstFormat = 0x7f23e5b1d301
inferiors = 1
pDstPicture = 0x7f23e654e440
pSrcFormat = <optimized out>
error = 0
pSrcPicture = 0x7f23e71ea910
pScreen = <optimized out>
pParent = 0x7f23e6c29450
pPixmap = 0x7f23e6e102e0
#9 0x00007f23e4cbb122 in compReallocPixmap (pWin=0x7f23e70
at ../../composite
pScreen = <optimized out>
pOld = 0x7f23e7135070
pNew = <optimized out>
cw = 0x7f23e6fda2e0
pix_x = 472
pix_y = 177
pix_w = <optimized out>
pix_h = <optimized out>
#10 0x00007f23e4cb7ec2 in compConfigNotify (pWin=0x7f23e70
at ../../composite
pScreen = 0x7f23e5b126b0
cs = 0x7f23e5d5df60
ret = <optimized out>
pParent = 0x7f23e6c29450
draw_x = <optimized out>
draw_y = <optimized out>
alloc_ret = <optimized out>
#11 0x00007f23e4c59194 in ConfigureWindow (pWin=<optimized out>, mask=12, vlist=<optimized out>, client=
ret = <optimized out>
pSib = 0x0
pParent = <optimized out>
sibwid = <optimized out>
index2 = <optimized out>
tmask = <optimized out>
pVlist = <optimized out>
x = -30
y = -30
beforeX = -30
beforeY = -30
w = 718
h = 511
bw = 0
rc = <optimized out>
action = 2
smode = <optimized out>
event = {u = {u = {type = 23 '\027', detail = 0 '\000', sequenceNumber = 0}, keyButtonPointer = {pad00 = 23, time = 29914854, root = 29914870,
event = 0, child = 4293066722, rootX = 718, rootY = 511, eventX = 0, eventY = 12, state = 0, sameScreen = 0 '\000', pad1 = 0 '\000'},
state = 0, mode = 0 '\000', flags = 0 '\000'}, focus = {pad00 = 23, window = 29914854, mode = 246 '\366', pad1 = 118 'v', pad2 = 200 '\310',
pad3 = 1 '\001'}, expose = {pad00 = 23, window = 29914854, x = 30454, y = 456, width = 0, height = 0, count = 65506, pad2 = 65506},
pad3 = 1 '\001'}, createNotify = {pad00 = 23, parent = 29914854, window = 29914870, x = 0, y = 0, width = 65506, height = 65506,
pad00 = 23, event = 29914854, window = 29914870, fromConfigure = 0 '\000', pad1 = 0 '\000', pad2 = 0 '\000', pad3 = 0 '\000'}, mapNotify = {
pad00 = 23, event = 29914854, window = 29914870, override = 0 '\000', pad1 = 0 '\000', pad2 = 0 '\000', pad3 = 0 '\000'}, mapRequest = {
pad00 = 23, parent = 29914854, window = 29914870}, reparent = {pad00 = 23, event = 29914854, window = 29914870, parent = 0, x = -30, y = -30,
pad00 = 23, parent = 29914854, window = 29914870, sibling = 0, x = -30, y = -30, width = 718, height = 511, borderWidth = 0, valueMask = 12,
pad1 = 0}, gravity = {pad00 = 23, event = 29914854, window = 29914870, x = 0, y = 0, pad1 = 4293066722, pad2 = 33489614, pad3 = 786432, pad4 = 0},
atom = 29914870, time = 0, state = 226 '\342', pad1 = 255 '\377', pad2 = 65506}, selectionClear = {pad00 = 23, time = 29914854, window = 29914870,
atom = 0}, selectionRequest = {pad00 = 23, time = 29914854, owner = 29914870, requestor = 0, selection = 4293066722, target = 33489614,
pad2 = 0 '\000'}, mappingNotify = {pad00 = 23, request = 230 '\346', firstKeyCode = 118 'v', count = 200 '\310', pad1 = 1 '\001'},
#12 0x00007f23e4c2930b in ProcConfigureWindow (client=
pWin = 0x7f23e70fcf90
stuff = 0x7f23e7278b80
len = 2
rc = <optimized out>
#13 0x00007f23e4c2e8a1 in Dispatch () at ../../dix/
clientReady = 0x7f23e6000860
result = <optimized out>
client = 0x7f23e60c9ee0
nready = 0
icheck = 0x7f23e4fe5c10
start_tick = 28160
#14 0x00007f23e4c1d7ba in main (argc=8, argv=<optimized out>, envp=<optimized out>) at ../../dix/
i = <optimized out>
(gdb) quit
I FART IN YOUR GENERAL DIRECTION! (I.e., this is a test to see whether anybody actually bothers to read these bug reports, because it doesn't really look like it...)