p-e-w / finalterm

At last – a modern terminal emulator (NO LONGER MAINTAINED)
http://finalterm.org
GNU General Public License v3.0
3.84k stars 179 forks source link

Fedora rawhide GLXBadDrawable [$35] #366

Closed Fgruntjes closed 9 years ago

Fgruntjes commented 9 years ago

Hello,

After starting finalterm and start typing I get a "GLXBadDrawable" error.

[08:12:12]-[localhost]-[freek]-[~]$ finalterm * Message: TerminalOutput.vala:386: Command mode entered * Message: Command updated: '' \ Message: Command updated: 'h'

(finalterm:8589): Gdk-ERROR **: The program 'finalterm' received an X Window System error. This probably reflects a bug in the program. The error was 'GLXBadDrawable'. (Details: serial 712 error_code 172 request_code 155 (GLX) minor_code 29) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the GDK_SYNCHRONIZE environment variable to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.) Trace/breakpoint trap (core dumped)

I both tried finalterm from http://copr-be.cloud.fedoraproject.org/results/mattdm/finalterm/fedora-rawhide-$basearch/ repository and build the latest master from source. Also tried clearing out my entire ~/.bashrc also no luck there.

I have installed the following version of packages:

gtk3.x86_64 3.14.0-1.fc22 gtk3-devel.x86_64 3.14.0-1.fc22 gtk3-immodule-xim.x86_64 3.14.0-1.fc22 libgee.x86_64 0.16.0-1.fc22 libgee-devel.x86_64 0.16.0-1.fc22 libgee06.x86_64 0.6.8-5.fc22 clutter.x86_64 1.20.0-1.fc22 clutter-devel.x86_64 1.20.0-1.fc22 clutter-gst2.x86_64 2.0.12-4.fc22 clutter-gtk.x86_64 1.6.0-1.fc22 clutter-gtk-devel.x86_64 1.6.0-1.fc22 libdmx.x86_64 1.1.3-4.fc22 libmx.x86_64 1.4.7-15.fc22 libmx-devel.x86_64 1.4.7-15.fc22 keybinder3.x86_64 0.3.0-4.fc22 keybinder3-devel.x86_64 0.3.0-4.fc22 libnotify.x86_64 0.7.6-4.fc22 libnotify-devel.x86_64 0.7.6-4.fc22 vala.x86_64 0.26.0-1.fc22 vala-devel.x86_64 0.26.0-1.fc22

Core backtrace

{ "signal": 5 , "executable": "/usr/local/bin/finalterm" , "stacktrace": [ { "crash_thread": true , "frames": [ { "address": 253793471584 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 330848 , "function_name": "g_logv" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 253793472159 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 331423 , "function_name": "g_log" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 254139473661 , "build_id": "79fd81cbfbc5f89601bc87a8fc3ae15f3f58c296" , "build_id_offset": 302845 , "function_name": "_gdk_x11_display_error_event" , "file_name": "/lib64/libgdk-3.so.0" } , { "address": 254139508945 , "build_id": "79fd81cbfbc5f89601bc87a8fc3ae15f3f58c296" , "build_id_offset": 338129 , "function_name": "gdk_x_error" , "file_name": "/lib64/libgdk-3.so.0" } , { "address": 253868922077 , "build_id": "d2ea5e5e103f75dc689bdd466135acd8d9ce66ee" , "build_id_offset": 283869 , "function_name": "_XError" , "file_name": "/lib64/libX11.so.6" } , { "address": 253977814695 , "build_id": "5d339b0b0f687436fc2b7325e84f68543efcac49" , "build_id_offset": 124583 , "function_name": "glXSendError" , "file_name": "/lib64/libGL.so.1" } , { "address": 253977972169 , "build_id": "5d339b0b0f687436fc2b7325e84f68543efcac49" , "build_id_offset": 282057 , "function_name": "GetDrawableAttribute" , "file_name": "/lib64/libGL.so.1" } , { "address": 254529688436 , "build_id": "91f9a4288ed7ca57ddc2a6c13c15424840e17ce6" , "build_id_offset": 447348 , "function_name": "_cogl_winsys_onscreen_get_buffer_age" , "file_name": "/lib64/libcogl.so.20" } , { "address": 254537893529 , "build_id": "f240b2881bec380153696e648110973b7b6fd395" , "build_id_offset": 263833 , "function_name": "clutter_stage_cogl_redraw" , "file_name": "/lib64/libclutter-1.0.so.0" } , { "address": 254538341975 , "build_id": "f240b2881bec380153696e648110973b7b6fd395" , "build_id_offset": 712279 , "function_name": "_clutter_stage_do_update" , "file_name": "/lib64/libclutter-1.0.so.0" } , { "address": 254538234153 , "build_id": "f240b2881bec380153696e648110973b7b6fd395" , "build_id_offset": 604457 , "function_name": "clutter_clock_dispatch" , "file_name": "/lib64/libclutter-1.0.so.0" } , { "address": 253793442539 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 301803 , "function_name": "g_main_context_dispatch" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 253793443464 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 302728 , "function_name": "g_main_context_iterate.isra.29" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 253793443644 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 302908 , "function_name": "g_main_context_iteration" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 253860925660 , "build_id": "db195fb5ca96fd8cc73fbd746d0ab65305081ac6" , "build_id_offset": 676060 , "function_name": "g_application_run" , "file_name": "/lib64/libgio-2.0.so.0" } , { "address": 4291517 , "build_id": "871174eeee780a928480485e13fef8361efa2aa4" , "build_id_offset": 97213 , "function_name": "final_term_main" , "file_name": "/usr/local/bin/finalterm" } , { "address": 4291703 , "build_id": "871174eeee780a928480485e13fef8361efa2aa4" , "build_id_offset": 97399 , "function_name": "main" , "file_name": "/usr/local/bin/finalterm" } ] } , { "frames": [ { "address": 253798355581 , "build_id": "0a8572cdeeed4a5a55997a34f9a1611225f7177e" , "build_id_offset": 1020541 , "function_name": "poll" , "file_name": "/lib64/libc.so.6" } , { "address": 253793443364 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 302628 , "function_name": "g_main_context_iterate.isra.29" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 253793444274 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 303538 , "function_name": "g_main_loop_run" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 253861146022 , "build_id": "db195fb5ca96fd8cc73fbd746d0ab65305081ac6" , "build_id_offset": 896422 , "function_name": "gdbus_shared_thread_func" , "file_name": "/lib64/libgio-2.0.so.0" } , { "address": 253793601461 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 460725 , "function_name": "g_thread_proxy" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 253801559434 , "build_id": "13e0edfda5fa318c453a20552db5bbeeed33c006" , "build_id_offset": 30090 , "function_name": "start_thread" , "file_name": "/lib64/libpthread.so.0" } , { "address": 253798402141 , "build_id": "0a8572cdeeed4a5a55997a34f9a1611225f7177e" , "build_id_offset": 1067101 , "function_name": "clone" , "file_name": "/lib64/libc.so.6" } ] } , { "frames": [ { "address": 253798355581 , "build_id": "0a8572cdeeed4a5a55997a34f9a1611225f7177e" , "build_id_offset": 1020541 , "function_name": "poll" , "file_name": "/lib64/libc.so.6" } , { "address": 253793443364 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 302628 , "function_name": "g_main_context_iterate.isra.29" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 253793443644 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 302908 , "function_name": "g_main_context_iteration" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 140129259115085 , "build_id": "8e4a47ca9465dac8013b659c3357ad116316c2ee" , "build_id_offset": 29261 , "function_name": "dconf_gdbus_worker_thread" , "file_name": "/usr/lib64/gio/modules/libdconfsettings.so" } , { "address": 253793601461 , "build_id": "4ffa400d21821f2552a267208b0beaa1295098ad" , "build_id_offset": 460725 , "function_name": "g_thread_proxy" , "file_name": "/lib64/libglib-2.0.so.0" } , { "address": 253801559434 , "build_id": "13e0edfda5fa318c453a20552db5bbeeed33c006" , "build_id_offset": 30090 , "function_name": "start_thread" , "file_name": "/lib64/libpthread.so.0" } , { "address": 253798402141 , "build_id": "0a8572cdeeed4a5a55997a34f9a1611225f7177e" , "build_id_offset": 1067101 , "function_name": "__clone" , "file_name": "/lib64/libc.so.6" } ] } ] }

And some system information

OS: Fedora release 22 (Rawhide) Kernel: 3.16.3-200.fc20.x86_64

If there is anything I have missed please tel me and I will do my best to add them.

Did you help close this issue? Go claim the $35 bounty on Bountysource.

ph4ntome commented 9 years ago

Hi friend, what kind of graphics card do you have? It seems like you miss something like DRI.

Actually could you provide the output of: glxinfo | grep direct

Fgruntjes commented 9 years ago

Hey there,

Well actually I have a dual video card (laptop) AMD and Intel. Pretty sure though the AMD doesnt do anything atm.

$ glxinfo | grep direct direct rendering: Yes GL_ARB_draw_elements_base_vertex, GL_ARB_draw_indirect, GL_ARB_map_buffer_range, GL_ARB_multi_bind, GL_ARB_multi_draw_indirect,

ph4ntome commented 9 years ago

From the trace it seems that it is a driver problem. If I am not wrong it seems that GetDrawableAttribute from libGL.so.1 starts the problem. Now, I installed the program in Arch linux and it run just fine. I tried it in two different installations, one with nvidia 304 driver and one with nvidia 340 driver. All went fine. So I suspect that it is indeed a driver problem. You said that you have two video cards. Can you select which one is active? I am wondering if you can change the active card to the other one and install the drivers (and libgl) for the new active card. Just to check if it runs nicely.

I checked the code from Fedora and compared with Arch and it is the exactly the same. As I suspected this problem is not in the vala code.

Bottom line, there are two suspects here, vala itself (maybe some quirk produced by vala compiling) which has a very low probability, and libgl which is a known source of many problems.

Fgruntjes commented 9 years ago

Sorry for the late response, was kinda bussy last couple of days. I managed to reinstall my system today with Fedora 20 and with a clean install everything works like a charm. So still dont know wat this was exactly but its solved. Thnx guys!