| Summary: | SIGABRT in sna_composite_rectangles [SNA] | ||||||
|---|---|---|---|---|---|---|---|
| Product: | xorg | Reporter: | Clemens Eisserer <linuxhippy> | ||||
| Component: | Driver/intel | Assignee: | Chris Wilson <chris> | ||||
| Status: | RESOLVED FIXED | QA Contact: | Intel GFX Bugs mailing list <intel-gfx-bugs> | ||||
| Severity: | normal | ||||||
| Priority: | medium | ||||||
| Version: | unspecified | ||||||
| Hardware: | Other | ||||||
| OS: | All | ||||||
| Whiteboard: | |||||||
| i915 platform: | i915 features: | ||||||
| Attachments: |
|
||||||
Can you please attach the Xorg.0.log as well? Or do you know which commit you are testing, so I can tally the assert with the code? the version tested was: 2.99.903-25-ga0476ee Created attachment 87128 [details]
Xorg log
ok, here is a complete bt:
#0 0x000000367cc35a19 in raise () from /lib64/libc.so.6
#1 0x000000367cc37128 in abort () from /lib64/libc.so.6
#2 0x000000367cc75d47 in __libc_message () from /lib64/libc.so.6
#3 0x000000367cc7bc17 in malloc_printerr () from /lib64/libc.so.6
#4 0x000000368ac5e2de in pixman_region_intersect () from /lib64/libpixman-1.so.0#5 0x00007f242cb3d519 in sna_composite_rectangles (op=<optimized out>,
dst=<optimized out>, color=<optimized out>, num_rects=<optimized out>, rects=<optimized out>) at sna_composite.c:1014
#6 0x000000000051a561 in ProcRenderFillRectangles ()
#7 0x0000000000436f97 in Dispatch ()
#8 0x00000000004264aa in main ()
Ah, that makes more sense. I was looking for one of my assert()s rather than a malloc error. While there may very well be another memory corruption elsewhere, this is the primary suspect: commit 20afd7263f65f29128fbbdbd5894a49594cda669 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Fri Oct 4 16:12:17 2013 +0100 sna: Tidy up FillRectangles intersection with complex clip Lesson 1: do not accidentally overwrite the loop count inside the loop. Reported-by: Clemens Eisserer <linuxhippy@gmail.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70137 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Ok, now something different pops up:
Program received signal SIGSEGV, Segmentation fault.
0x000000368ac5e1c6 in pixman_region_intersect ()
from /lib64/libpixman-1.so.0
(gdb) bt
#0 0x000000368ac5e1c6 in pixman_region_intersect ()
from /lib64/libpixman-1.so.0
#1 0x00007f6c0b33a50a in sna_composite_rectangles (
op=<optimized out>, dst=<optimized out>, color=<optimized out>,
num_rects=<optimized out>, rects=<optimized out>)
at sna_composite.c:1014
#2 0x000000000051a561 in ProcRenderFillRectangles ()
#3 0x0000000000436f97 in Dispatch ()
commit 898087014c36c757f8d2e0087e63467192a52837 Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Fri Oct 4 16:12:17 2013 +0100 sna: Fix FillRectangles intersection with complex clip Lesson 2: Use the right variables. Reported-by: Clemens Eisserer <linuxhippy@gmail.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=70137 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> fixed, thanks! |
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.
When working with Eclipse' autocomplete feature, I frequently run into SIGABRT in sna_composite_rectangles. Hope the backtrace is conclusive: #5 0x00007f242cb3d519 in sna_composite_rectangles (op=<optimized out>, dst=<optimized out>, color=<optimized out>, num_rects=<optimized out>, rects=<optimized out>) at sna_composite.c:1014 tmp = {extents = {x1 = 21648, y1 = 129, x2 = 0, y2 = 0}, data = 0x466e8c <WaitForSomething+2300>} bo = 0x12af050 damage = 0x0 region = {extents = {x1 = 400, y1 = 364, x2 = 402, y2 = 379}, data = 0x0} stack_boxes = {{x1 = 400, y1 = 364, x2 = 402, y2 = 379}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 2496, y1 = -22718, x2 = 32767, y2 = 0}, {x1 = 2488, ---Type <return> to continue, or q <return> to quit--- y1 = -22718, x2 = 32767, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, { x1 = 2496, y1 = -22718, x2 = 32767, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 14983, y1 = 4, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 120, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 24, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 0, y1 = 0, x2 = 0, y2 = 0}, {x1 = 30928, y1 = 393, x2 = 0, y2 = 0}, {x1 = 30932, y1 = 393, x2 = 0, y2 = 0}, {x1 = 5152, y1 = 297, x2 = 0, y2 = 0}, {x1 = -7010, y1 = 11441, x2 = 32548, y2 = 0}, { x1 = 31032, y1 = 393, x2 = 0, y2 = 0}, {x1 = -4496, y1 = 295, x2 = 0, y2 = 0}, {x1 = -5808, y1 = 295, x2 = 0, y2 = 0}, {x1 = -6929, y1 = 11441, x2 = 32548, y2 = 0}, {x1 = 2800, y1 = -22718, x2 = 32767, y2 = 0}, { x1 = -1759, y1 = 81, x2 = 0, y2 = 0}, {x1 = 9200, y1 = 89, x2 = 0, y2 = 0}, {x1 = 16, y1 = 0, x2 = 48, y2 = 0}, {x1 = 2960, y1 = -22718, x2 = 32767, y2 = 0}, {x1 = 2752, y1 = -22718, x2 = 32767, y2 = 0}, { x1 = 5152, y1 = 297, x2 = 0, y2 = 0}, {x1 = -22656, y1 = 31995, x2 = 54, ---Type <return> to continue, or q <return> to quit--- y2 = 0}, {x1 = 120, y1 = 0, x2 = 0, y2 = 0}, {x1 = -22656, y1 = 31995, x2 = 54, y2 = 0}, {x1 = 24, y1 = 0, x2 = 0, y2 = 0}, {x1 = -10816, y1 = 128, x2 = 0, y2 = 0}, {x1 = 5747, y1 = 864, x2 = 0, y2 = 0}, { x1 = 30928, y1 = 393, x2 = 0, y2 = 0}, {x1 = 22264, y1 = 128, x2 = 0, y2 = 0}, {x1 = 92, y1 = 31944, x2 = 54, y2 = 0}, {x1 = 5747, y1 = 864, x2 = 0, y2 = 0}, {x1 = 27656, y1 = 344, x2 = 0, y2 = 0}, {x1 = 64, y1 = 0, x2 = 0, y2 = 0}, {x1 = -27012, y1 = 69, x2 = 0, y2 = 0}, {x1 = 27, y1 = 0, x2 = 0, y2 = 0}, {x1 = -14864, y1 = 385, x2 = 0, y2 = 0}, {x1 = 30928, y1 = 393, x2 = 0, y2 = 0}, {x1 = 9024, y1 = 293, x2 = 0, y2 = 0}, { x1 = 57, y1 = 0, x2 = 0, y2 = 0}, {x1 = 3508, y1 = 392, x2 = 0, y2 = 0}, { x1 = 1, y1 = 0, x2 = 0, y2 = 0}, {x1 = 13007, y1 = 81, x2 = 0, y2 = 0}, { x1 = 30928, y1 = 393, x2 = 0, y2 = 0}, {x1 = 24825, y1 = 81, x2 = 0, y2 = 0}, {x1 = 30928, y1 = 393, x2 = 0, y2 = 0}, {x1 = 25853, y1 = 81, x2 = 0, y2 = 0}} boxes = <optimized out> b = <optimized out> dst_x = <optimized out> dst_y = <optimized out> i = 0 num_boxes = 1 ---Type <return> to continue, or q <return> to quit--- error = 0 hint = <optimized out> #6 0x000000000051a561 in ProcRenderFillRectangles ()