I have a program (VICE; see http://vice-emu.sourceforge.net/ ) which can have multiple GUIs. Two of them seem to use the /usr/X11R7/lib/modules/dri/r600_dri.so file eventually and crash in them. I think I saw something similar (at least involving dri, but with a different crashing function) before in abiword, in PR 50320. http://gnats.netbsd.org/50320 Fortunately VICE also has an Xaw GUI and that one works fine. Do these stacktraces below ring a bell for anybody? Here is a crash for the SDL2 GUI. This happens a few seconds after starting up, and after some of the emulated screen has been shown already: Program received signal SIGSEGV, Segmentation fault. [Switching to LWP 1] 0x00007f7fed942551 in r600_draw_rectangle () from /usr/X11R7/lib/modules/dri/r600_dri.so (gdb) bt #0 0x00007f7fed942551 in r600_draw_rectangle () from /usr/X11R7/lib/modules/dri/r600_dri.so #1 0x00007f7fed94862c in util_blitter_custom_color () from /usr/X11R7/lib/modules/dri/r600_dri.so #2 0x00007f7fed9016b7 in ?? () from /usr/X11R7/lib/modules/dri/r600_dri.so #3 0x00007f7fed6a1c0e in dri_flush () from /usr/X11R7/lib/modules/dri/r600_dri.so #4 0x00007f7ff4c5a73c in ?? () from /usr/X11R7/lib/libGL.so.2 #5 0x00000000004d8c61 in refresh_canvas (raster=<optimized out>, raster=<optimized out>) at ../../../vice/src/raster/raster-canvas.c:99 #6 raster_canvas_handle_end_of_frame (raster=0x7f7ff2731180, raster@entry=0x13e1310 <crtc+208>) at ../../../vice/src/raster/raster-canvas.c:124 #7 0x00000000004d8145 in crtc_raster_draw_alarm_handler (offset=0, data=<optimized out>) at ../../../vice/src/crtc/crtc.c:618 #8 0x0000000000435f3a in alarm_context_dispatch (cpu_clk=60199, context=<optimized out>) at ../../../vice/src/alarm.h:145 #9 maincpu_mainloop () at ../../../vice/src/pet/../6510core.c:1982 #10 0x000000000041f7d5 in main_program (argc=3, argv=<optimized out>) at ../../vice/src/main.c:274 #11 0x0000000000407655 in ___start () #12 0x00007f7ff7c0588d in _rtld () from /usr/libexec/ld.elf_so Backtrace stopped: previous frame inner to this frame (corrupt stack?) Here is the same thing with GTK GUI: Program received signal SIGSEGV, Segmentation fault. [Switching to LWP 1] 0x00007f7fe4d42551 in r600_draw_rectangle () from /usr/X11R7/lib/modules/dri/r600_dri.so (gdb) bt #0 0x00007f7fe4d42551 in r600_draw_rectangle () from /usr/X11R7/lib/modules/dri/r600_dri.so #1 0x00007f7fe4d4862c in util_blitter_custom_color () from /usr/X11R7/lib/modules/dri/r600_dri.so #2 0x00007f7fe4d016b7 in ?? () from /usr/X11R7/lib/modules/dri/r600_dri.so #3 0x00007f7fe4aa1c0e in dri_flush () from /usr/X11R7/lib/modules/dri/r600_dri.so #4 0x00007f7ff045a73c in ?? () from /usr/X11R7/lib/libGL.so.2 #5 0x000000000058a6f4 in gl_render_canvas (do_swap=1, to=0, from=0, buffers=0x191bc60 <t>, canvas=<optimized out>, w=<optimized out>) at ../../../../../../vice/src/arch/unix/x11/gnome/x11ui.c:1933 #6 exposure_callback_canvas (w=<optimized out>, e=<optimized out>, client_data=<optimized out>) at ../../../../../../vice/src/arch/unix/x11/gnome/x11ui.c:1999 #7 0x00007f7ff69308d8 in ?? () from /usr/pkg/lib/libgtk-x11-2.0.so.0 #8 0x00007f7ff240faef in g_closure_invoke () from /usr/pkg/lib/libgobject-2.0.so.0 #9 0x00007f7ff241f218 in signal_emit_unlocked_R () from /usr/pkg/lib/libgobject-2.0.so.0 #10 0x00007f7ff24262d7 in g_signal_emit_valist () from /usr/pkg/lib/libgobject-2.0.so.0 #11 0x00007f7ff242698c in g_signal_emit () from /usr/pkg/lib/libgobject-2.0.so.0 #12 0x00007f7ff6a2a5f5 in ?? () from /usr/pkg/lib/libgtk-x11-2.0.so.0 #13 0x00007f7ff692f745 in gtk_main_do_event () from /usr/pkg/lib/libgtk-x11-2.0.so.0 #14 0x00007f7ff64436e6 in ?? () from /usr/pkg/lib/libgdk-x11-2.0.so.0 #15 0x00007f7ff6440740 in ?? () from /usr/pkg/lib/libgdk-x11-2.0.so.0 #16 0x00007f7ff6440f8e in gdk_window_process_all_updates () from /usr/pkg/lib/libgdk-x11-2.0.so.0 #17 0x00007f7ff6440fe2 in ?? () from /usr/pkg/lib/libgdk-x11-2.0.so.0 #18 0x00007f7ff64236e6 in ?? () from /usr/pkg/lib/libgdk-x11-2.0.so.0 #19 0x00007f7ff2044099 in g_main_context_dispatch () from /usr/pkg/lib/libglib-2.0.so.0 #20 0x00007f7ff204438a in g_main_context_iterate.isra () from /usr/pkg/lib/libglib-2.0.so.0 #21 0x00007f7ff2044454 in g_main_context_iteration () from /usr/pkg/lib/libglib-2.0.so.0 #22 0x00007f7ff692eade in gtk_main_iteration () from /usr/pkg/lib/libgtk-x11-2.0.so.0 #23 0x000000000058b514 in ui_dispatch_next_event () at ../../../../../../vice/src/arch/unix/x11/gnome/x11ui.c:1025 #24 ui_dispatch_events () at ../../../../../../vice/src/arch/unix/x11/gnome/x11ui.c:1041 #25 0x000000000057350c in vsyncarch_postsync () at ../../../../vice/src/arch/unix/vsyncarch.c:134 #26 0x00000000004a991c in vsync_do_vsync (c=<optimized out>, been_skipped=<optimized out>) at ../../vice/src/vsync.c:552 #27 0x0000000000551737 in crtc_raster_draw_alarm_handler (offset=1, data=<optimized out>) at ../../../vice/src/crtc/crtc.c:619 #28 0x00000000004af76a in alarm_context_dispatch (cpu_clk=22850, context=<optimized out>) at ../../../vice/src/alarm.h:145 #29 maincpu_mainloop () at ../../../vice/src/pet/../6510core.c:1982 #30 0x0000000000498fb5 in main_program (argc=1, argv=<optimized out>) at ../../vice/src/main.c:274 #31 0x0000000000480df5 in ___start () #32 0x00007f7ff7c0588d in _rtld () from /usr/libexec/ld.elf_so Backtrace stopped: previous frame inner to this frame (corrupt stack?) -Olaf. -- ___ Olaf 'Rhialto' Seibert -- The Doctor: No, 'eureka' is Greek for \X/ rhialto/at/xs4all.nl -- 'this bath is too hot.'
Attachment:
signature.asc
Description: PGP signature