Created attachment 83376 [details] apitrace from flightgear With the 9.2 branch softpipe seems to cause a floating point exception with flightgear. 1e003b44e83dde3912ec48eb3df0e25802b5101e as mentioned in bug #66806 does not seem to fix this. apitrace: warning: caught signal 8 55: error: caught an unhandled exception apitrace: info: taking default action for signal 8 #0 0x0000033b25ce54a5 in float_to_ubyte (f=0.25) at u_math.h:553 #1 0x0000033b25d1e112 in util_format_b8g8r8x8_unorm_pack_rgba_float ( dst_row=0x33b24315900 "", dst_stride=256, src_row=0x33b25851400, src_stride=1024, width=64, height=64) at util/u_format_table.c:325 #2 0x0000033b25c8081c in util_format_write_4f ( format=PIPE_FORMAT_B8G8R8X8_UNORM, src=0x33b2584b000, src_stride=1024, dst=0x33b24314000, dst_stride=256, x=0, y=0, w=64, h=64) at util/u_format.c:251 #3 0x0000033b25ca927d in pipe_put_tile_rgba_format (pt=0x33b1cdfc280, dst=0x33b268da000, x=0, y=0, w=64, h=64, format=PIPE_FORMAT_B8G8R8X8_UNORM, p=0x33b2584b000) at util/u_tile.c:518 #4 0x0000033b25d49829 in sp_flush_tile (tc=0x33b21737000, pos=0) at sp_tile_cache.c:398 #5 0x0000033b25d498d1 in sp_flush_tile_cache (tc=0x33b21737000) at sp_tile_cache.c:430 #6 0x0000033b25d3b686 in softpipe_set_framebuffer_state (pipe=0x33b2426d000, fb=0x7f7ffffe5ca0) at sp_state_surface.c:62 #7 0x0000033b25bfb774 in cso_set_framebuffer (ctx=0x33b2881a150, fb=0x7f7ffffe5ca0) at cso_cache/cso_context.c:632 #8 0x0000033b25c9d6a1 in util_gen_mipmap (ctx=0x33b1bce9400, psv=0x33b25848b00, face=0, baseLevel=0, lastLevel=9, filter=1) at util/u_gen_mipmap.c:1640 #9 0x0000033b25b0b256 in st_render_mipmap (st=0x33b21315060, target=3553, stObj=0x33b1cf3c800, baseLevel=0, lastLevel=9) at ../../src/mesa/state_tracker/st_gen_mipmap.c:96 #10 0x0000033b25b0b6ee in st_generate_mipmap (ctx=0x33b1a6b2000, target=3553, texObj=0x33b1cf3c800) at ../../src/mesa/state_tracker/st_gen_mipmap.c:201 #11 0x0000033b25a6a5a2 in check_gen_mipmap (ctx=0x33b1a6b2000, target=3553, texObj=0x33b1cf3c800, level=0) at ../../src/mesa/main/teximage.c:2807 #12 0x0000033b25a6a46b in teximage (ctx=0x33b1a6b2000, compressed=0 '\0', dims=2, target=3553, level=0, internalFormat=6407, width=512, height=512, depth=1, border=0, format=6407, type=5121, imageSize=0, pixels=0x33b25784000) at ../../src/mesa/main/teximage.c:3161 #13 0x0000033b25a6a734 in _mesa_TexImage2D (target=3553, level=0, internalFormat=6407, width=512, height=512, border=0, format=6407, type=5121, pixels=0x33b25784000) at ../../src/mesa/main/teximage.c:3195 #14 0x0000033b24626349 in glTexImage2D (target=3553, level=0, internalformat=6407, width=512, height=512, border=0, format=6407, type=5121, pixels=0x33b25784000) at glapi_mapi_tmp.h:2683 #15 0x0000033919503eca in _ZL20retrace_glTexImage2DRN5trace4CallE () from /usr/local/bin/glretrace #16 0x0000033919431965 in retrace::Retracer::retrace () from /usr/local/bin/glretrace #17 0x000003391942dec0 in _ZN7retraceL11retraceCallEPN5trace4CallE () from /usr/local/bin/glretrace #18 0x000003391942e6eb in retrace::RelayRace::run () 0x0000033b25ce548c <float_to_ubyte+50>: movss 0xfffffffffffffff0(%rbp),%xmm1 0x0000033b25ce5491 <float_to_ubyte+55>: movss 3274279(%rip),%xmm0 # 0x33b26004ac0 <util_format_linear_to_srgb_8unorm_table+9696> 0x0000033b25ce5499 <float_to_ubyte+63>: mulss %xmm0,%xmm1 0x0000033b25ce549d <float_to_ubyte+67>: movss 3274271(%rip),%xmm0 # 0x33b26004ac4 <util_format_linear_to_srgb_8unorm_table+9700> 0x0000033b25ce54a5 <float_to_ubyte+75>: addss %xmm1,%xmm0 0x0000033b25ce54a9 <float_to_ubyte+79>: movss %xmm0,0xfffffffffffffff0(%rbp) 0x0000033b25ce54ae <float_to_ubyte+84>: mov 0xfffffffffffffff0(%rbp),%eax 0x0000033b25ce54b1 <float_to_ubyte+87>: movzbl %al,%eax rax 0x3e800000 1048576000 rbx 0x40 64 rcx 0x400 1024 rdx 0x33b243159f8 3552545167864 rsi 0x100 256 rdi 0x33b24314000 3552545161216 rbp 0x7f7ffffe59a0 0x7f7ffffe59a0 rsp 0x7f7ffffe59a0 0x7f7ffffe59a0 r8 0x40 64 r9 0x40 64 r10 0x33b24314000 3552545161216 r11 0x33b25d1e0b7 3552572465335 r12 0x40 64 r13 0x200 512 r14 0x200 512 r15 0x1907 6407 rip 0x33b25ce54a5 0x33b25ce54a5 <float_to_ubyte+75> eflags 0x10293 66195 cs 0x2b 43 ss 0x23 35 ds 0x23 35 es 0x23 35 fs 0x23 35 gs 0x23 35 st0 0 (raw 0x00000000000000000000) st1 0 (raw 0x00000000000000000000) st2 0 (raw 0x00000000000000000000) st3 0 (raw 0x00000000000000000000) st4 0 (raw 0x00000000000000000000) st5 0 (raw 0x00000000000000000000) st6 0 (raw 0x00000000000000000000) st7 510 (raw 0x4007ff00000000000000) fctrl 0x37f 895 fstat 0x20 32 ftag 0xffff 65535 fiseg 0x0 0 fioff 0x0 0 foseg 0x0 0 fooff 0x0 0 fop 0x0 0 xmm0 {f = {0x8000, 0x0, 0x0, 0x0}} {f = {32768, 0, 0, 0}} xmm1 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0.249023438, 0, 0, 0}} xmm2 {f = {0x1, 0x0, 0x0, 0x0}} {f = {1, 0, 0, 0}} xmm3 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0.5, 0, 0, 0}} xmm4 {f = {0x1, 0x0, 0x0, 0x0}} {f = {1, 0, 0, 0}} xmm5 {f = {0x1, 0x0, 0x0, 0x0}} {f = {1, 0, 0, 0}} xmm6 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0.5, 0, 0, 0}} xmm7 {f = {0x1, 0x0, 0x0, 0x0}} {f = {1, 0, 0, 0}} xmm8 {f = {0x0, 0x1, 0x0, 0x0}} {f = {2.05686675e+26, 1.99932396, 0, 0}} xmm9 {f = {0x0, 0x1, 0x0, 0x0}} {f = {0, 1.875, 0, 0}} xmm10 {f = {0x0, 0x1, 0x0, 0x0}} {f = {0, 1.875, 0, 0}} xmm11 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} xmm12 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} xmm13 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} xmm14 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} xmm15 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} mxcsr 0x0 0 A similiar problem seems to exist with r600 when disabling gallivm: apitrace: warning: caught signal 8 29857: error: caught an unhandled exception apitrace: info: taking default action for signal 8 #0 0x00000c304a5d5b2f in _mesa_Bitmap (width=8, height=15, xorig=-1, yorig=3, xmove=8, ymove=0, bitmap=0xc30418fd5b0 "") at ../../src/mesa/main/drawpix.c:326 #1 0x00000c3050805a35 in glBitmap (width=8, height=15, xorig=-1, yorig=3, xmove=8, ymove=0, bitmap=0xc30418fd5b0 "") at glapi_mapi_tmp.h:1458 #2 0x00000c2e41500b8f in _ZL16retrace_glBitmapRN5trace4CallE () from /usr/local/bin/glretrace #3 0x00000c2e41431965 in retrace::Retracer::retrace () from /usr/local/bin/glretrace #4 0x00000c2e4142dec0 in _ZN7retraceL11retraceCallEPN5trace4CallE () from /usr/local/bin/glretrace #5 0x00000c2e4142e6eb in retrace::RelayRace::run () from /usr/local/bin/glretrace the line in question is: GLint x = IFLOOR(ctx->Current.RasterPos[0] + epsilon - xorig) (gdb) p ctx->Current.RasterPos[0] $1 = 5 (gdb) p /f epsilon $2 = 9.99999975e-05 (gdb) p xorig $3 = -1 0x00000c304a5d5b1b <_mesa_Bitmap+345>: mov $0x38d1b717,%eax 0x00000c304a5d5b20 <_mesa_Bitmap+350>: mov %eax,0xfffffffffffffff4(%rbp) 0x00000c304a5d5b23 <_mesa_Bitmap+353>: mov 0xffffffffffffffe0(%rbp),%rax 0x00000c304a5d5b27 <_mesa_Bitmap+357>: movss 0x17a0(%rax),%xmm0 0x00000c304a5d5b2f <_mesa_Bitmap+365>: addss 0xfffffffffffffff4(%rbp),%xmm0 0x00000c304a5d5b34 <_mesa_Bitmap+370>: subss 0xffffffffffffffcc(%rbp),%xmm0 0x00000c304a5d5b39 <_mesa_Bitmap+375>: callq 0xc304a5d5d97 <IFLOOR> rax 0xc304f1b0000 13401625133056 rbx 0xc3042e30940 13401420138816 rcx 0x1 1 rdx 0x0 0 rsi 0xc304ab1d44f 13401551131727 rdi 0xc304f1b0000 13401625133056 rbp 0x7f7ffffe7180 0x7f7ffffe7180 rsp 0x7f7ffffe7110 0x7f7ffffe7110 r8 0x1 1 r9 0x0 0 r10 0x1 1 r11 0x206 518 r12 0xc2e418651d2 13392807350738 r13 0xc30418fd5b0 13401397908912 r14 0xf 15 r15 0x8 8 rip 0xc304a5d5b2f 0xc304a5d5b2f <_mesa_Bitmap+365> eflags 0x10206 66054 cs 0x2b 43 ss 0x23 35 ds 0x23 35 es 0x23 35 fs 0x23 35 gs 0x23 35 st0 0 (raw 0x00000000000000000000) st1 0 (raw 0x00000000000000000000) st2 0 (raw 0x00000000000000000000) st3 0 (raw 0x00000000000000000000) st4 0 (raw 0x00000000000000000000) st5 0 (raw 0x00000000000000000000) st6 0 (raw 0x00000000000000000000) st7 1 (raw 0x3fff8000000000000000) fctrl 0x37f 895 fstat 0x0 0 ftag 0xffff 65535 fiseg 0x0 0 fioff 0x0 0 foseg 0x0 0 fooff 0x0 0 fop 0x0 0 xmm0 {f = {0x5, 0x0, 0x0, 0x0}} {f = {5, 0, 0, 0}} xmm1 {f = {0x3, 0x0, 0x0, 0x0}} {f = {3, 0, 0, 0}} xmm2 {f = {0x8, 0x0, 0x0, 0x0}} {f = {8, 0, 0, 0}} xmm3 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} xmm4 {f = {0x3, 0x0, 0x0, 0x0}} {f = {3, 0, 0, 0}} xmm5 {f = {0xffffffff, 0x0, 0x0, 0x0}} {f = {-1, 0, 0, 0}} xmm6 {f = {0x0, 0x1, 0x0, 0x0}} {f = {0, 1.875, 0, 0}} xmm7 {f = {0x0, 0x0, 0x0, 0x0}} {f = {-7.94852232e+34, -0.899182439, 0, 0}} xmm8 {f = {0x0, 0x1, 0x0, 0x0}} {f = {2.05686675e+26, 1.99932396, 0, 0}} xmm9 {f = {0x0, 0x1, 0x0, 0x0}} {f = {0, 1.875, 0, 0}} xmm10 {f = {0x0, 0x1, 0x0, 0x0}} {f = {0, 1.875, 0, 0}} xmm11 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} xmm12 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} xmm13 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} xmm14 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} xmm15 {f = {0x0, 0x0, 0x0, 0x0}} {f = {0, 0, 0, 0}} mxcsr 0x0 0 With OpenBSD/amd64 5.4 with gcc 4.2.1 The problem does not seem to trigger with llvmpipe, r600 with gallivm or i965. attached apitrace file can be used to trigger the problem.
I don't know why 1e003b44e83dde3912ec48eb3df0e25802b5101e wouldn't fix this but since 63386b2f66a6d450889cd5368bc599beb7f1efbf which caused this is in 9.2 branch (I missed this before otherwise I've annotated the patch with candidate for stable branch) it definitely needs to be in 9.2 branch too and I've just done that.
It seems I was mistaken. I rebuilt the xserver and the rest of the xorg code instead of only mesa and I can no longer reproduce this with 1e003b44e83dde3912ec48eb3df0e25802b5101e applied, closing. *** This bug has been marked as a duplicate of bug 66806 ***
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.