[Pixman] [BUG] SIGSEGV in sse2_fill

Frédéric Fauberteau triaxx at NetBSD.org
Wed Aug 29 08:59:19 UTC 2018


I encounter a xorg segfault after building it with the following 
optimization CFLAGS: -march=athlon64-sse3 -mfpmath=sse

I noticed that height goes from 1050 in _pixman_implementation_fill() to 
1041 in sse2_fill() ...?

Reading symbols from /usr/pkg/bin/X...done.
(gdb) run :0
Starting program: /usr/pkg/bin/X :0

X.Org X Server 1.20.0
X Protocol Version 11, Revision 0
Build Operating System: NetBSD-8.0-x86_64 The NetBSD Foundation
Current Operating System: NetBSD hydralisk 8.0 NetBSD 8.0 (HYDRALISK) 
#2: Thu Aug 23 13:57:31 CEST 2018  
root at hydralisk:/usr/obj/sys/arch/amd64/compile/HYDRALISK amd64
Build Date: 29 August 2018  10:12:23AM

Current version of pixman: 0.34.0
         Before reporting problems, check http://wiki.x.org
         to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
         (++) from command line, (!!) notice, (II) informational,
         (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Wed Aug 29 10:19:40 2018
(==) Using config file: "/etc/xorg.conf"
(==) Using system config directory "/usr/pkg/share/X11/xorg.conf.d"
(II) [KMS] Kernel modesetting enabled.

Program received signal SIGSEGV, Segmentation fault.
sse2_fill (imp=<optimized out>, bits=<optimized out>, stride=<optimized 
out>, bpp=<optimized out>, x=<optimized out>, y=<optimized out>, 
width=2960, height=1041, filler=0) at pixman-sse2.c:3408
3408    pixman-sse2.c: No such file or directory.
(gdb) bt
#0  sse2_fill (imp=<optimized out>, bits=<optimized out>, 
stride=<optimized out>, bpp=<optimized out>, x=<optimized out>, 
y=<optimized out>, width=2960, height=1041, filler=0) at 
pixman-sse2.c:3408
#1  0x000075dc0f8509ef in _pixman_implementation_fill 
(imp=0x75dc10304000, bits=bits at entry=0x75dc0ffe6aa0, 
stride=stride at entry=2976, bpp=bpp at entry=32, x=x at entry=0, y=y at entry=0, 
width=width at entry=2960, height=height at entry=1050, filler=<optimized 
out>, filler at entry=0)
     at pixman-implementation.c:277
#2  0x000075dc0f80ba14 in pixman_fill (bits=bits at entry=0x75dc0ffe6aa0, 
stride=stride at entry=2976, bpp=bpp at entry=32, x=x at entry=0, y=y at entry=0, 
width=width at entry=2960, height=height at entry=1050, filler=0) at 
pixman.c:834
#3  0x000075dc06c0de9c in fbFill 
(pDrawable=pDrawable at entry=0x75dc0fb447c0, pGC=pGC at entry=0x75dc0ff88a00, 
x=x at entry=0, y=y at entry=0, width=width at entry=2960, 
height=height at entry=1050) at fbfill.c:125
#4  0x000075dc06c0e720 in fbPolyFillRect 
(pDrawable=pDrawable at entry=0x75dc0fb447c0, pGC=pGC at entry=0x75dc0ff88a00, 
nrect=<optimized out>, nrect at entry=1, prect=0x75dc0e33b088, 
prect at entry=0x75dc0e33b080) at fbfillrect.c:72
#5  0x000075dc06819c23 in glamor_poly_fill_rect_bail 
(prect=0x75dc0e33b080, nrect=1, gc=0x75dc0ff88a00, 
drawable=0x75dc0fb447c0) at glamor_rects.c:174
#6  glamor_poly_fill_rect (drawable=0x75dc0fb447c0, gc=0x75dc0ff88a00, 
nrect=1, prect=0x75dc0e33b080) at glamor_rects.c:186
#7  0x0000000000503fd8 in damagePolyFillRect (pDrawable=0x75dc0fb447c0, 
pGC=0x75dc0ff88a00, nRects=1, pRects=<optimized out>) at damage.c:1204
#8  0x000000000055dfa6 in miPaintWindow (pWin=<optimized out>, 
prgn=0x7f7fff7d3de0, what=<optimized out>) at miexpose.c:540
#9  0x000000000055dc86 in miWindowExposures (pWin=0x75dc0fb447c0, 
prgn=0x7f7fff7d3de0) at miexpose.c:394
#10 0x000000000048008e in xf86XVWindowExposures (pWin=0x75dc0fb447c0, 
reg1=0x7f7fff7d3de0) at xf86xv.c:1062
#11 0x000075dc07c480b0 in RADEONWindowExposures_oneshot 
(pWin=0x75dc0fb447c0, pRegion=0x7f7fff7d3de0) at radeon_kms.c:1681
#12 0x000000000045b7fd in MapWindow (pWin=0x75dc0fb447c0, 
client=<optimized out>) at window.c:2722
#13 0x00000000004341de in dix_main (argc=2, argv=0x7f7fff7d3ec0, 
envp=<optimized out>) at main.c:247
#14 0x000000000041ebdb in ___start ()
#15 0x00007f7fa7603382 in _rtld () from /usr/libexec/ld.elf_so
#16 0x00007f7fff7d4571 in ?? ()
#17 0x00007f7fff7d457f in ?? ()
#18 0x0000000000000000 in ?? ()


More information about the Pixman mailing list