Page MenuHomePhabricator

Crash when closing Qt app.
Closed, ResolvedPublic

Description

I know Qt is a shitshow on Wayland at the moment but anyway.
Tested with DjVIew4.
Open DjView > Open a Menu (file) > Move up and down in it > Then close the app from the X on the bar > See e crash, text and the horrendous looking WL WOD.

Result:

coredumpctl gdb
         PID: 8022 (enlightenment)
         UID: 1000 (toliz)
         GID: 1000 (toliz)
      Signal: 11 (SEGV)
   Timestamp: Fri 2016-04-08 14:34:41 EEST (3min 56s ago)
Command Line: /usr/bin/enlightenment
  Executable: /usr/bin/enlightenment

Control Group: /user.slice/user-1000.slice/session-c1.scope

      Unit: session-c1.scope
     Slice: user-1000.slice
   Session: c1
 Owner UID: 1000 (toliz)
   Boot ID: c526c5dc5280450d93ceeb2572d960f2
Machine ID: 77c42d073644466287ad3d7a519e810c
  Hostname: testland
  Coredump: /var/lib/systemd/coredump/core.enlightenment.1000.c526c5dc5280450d93ceeb2572d960f2.8022.1460115281000000000000.lz4
   Message: Process 8022 (enlightenment) of user 1000 dumped core.

            Stack trace of thread 8022:
            #0  0x00000000b0c7b776 _e_shell_surface_destroy (module.so)
            #1  0x00000000b0c7b8ca _e_shell_surface_cb_destroy (module.so)
            #2  0x00000000b6e53ad3 destroy_resource (libwayland-server.so.0)
            #3  0x00000000b6e5a055 for_each_helper (libwayland-server.so.0)
            #4  0x00000000b6e5a089 wl_map_for_each (libwayland-server.so.0)
            #5  0x00000000b6e53dce wl_client_destroy (libwayland-server.so.0)
            #6  0x00000000b6e533df wl_client_connection_data (libwayland-server.so.0)
            #7  0x00000000b6e55ff5 wl_event_source_fd_dispatch (libwayland-server.so.0)
            #8  0x00000000b6e56a75 wl_event_loop_dispatch (libwayland-server.so.0)
            #9  0x00000000b6e6f638 _cb_create_data (libecore_wl2.so.1)
            #10 0x00000000b70eb727 _ecore_call_fd_cb (libecore.so.1)
            #11 0x00000000b70eddbf _ecore_main_fd_handlers_call (libecore.so.1)
            #12 0x00000000b70ee38d _ecore_main_loop_iterate_internal (libecore.so.1)
            #13 0x00000000b70ec60d ecore_main_loop_begin (libecore.so.1)
            #14 0x000000000807a0b3 main (enlightenment)
            #15 0x00000000b6b7d527 __libc_start_main (libc.so.6)
            #16 0x0000000008074681 _start (enlightenment)

GNU gdb (GDB) 7.11
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
http://www.gnu.org/software/gdb/bugs/.
Find the GDB manual and other documentation resources online at:
http://www.gnu.org/software/gdb/documentation/.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/enlightenment...Reading symbols from /usr/lib/debug/usr/bin/enlightenment.debug...done.
done.
[New LWP 8022]
[New LWP 8025]
[New LWP 8023]

warning: Could not load shared library symbols for linux-gate.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `/usr/bin/enlightenment'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0xb0c7b776 in _e_shell_surface_destroy (resource=0x9c65618) at src/modules/wl_desktop_shell/e_mod_main.c:135
135 E_FREE_LIST(shd->pending, free);
[Current thread is 1 (Thread 0xb5487a00 (LWP 8022))]
(gdb) bt
#0 0xb0c7b776 in _e_shell_surface_destroy (resource=0x9c65618) at src/modules/wl_desktop_shell/e_mod_main.c:135
#1 0xb0c7b8ca in _e_shell_surface_cb_destroy (resource=0x9c65618) at src/modules/wl_desktop_shell/e_mod_main.c:159
#2 0xb6e53ad3 in destroy_resource (element=0x9c65618, data=0xbfd3e518) at src/wayland-server.c:571
#3 0xb6e5a055 in for_each_helper (entries=0x9c435d0, func=0xb6e53a69 <destroy_resource>, data=0xbfd3e518) at src/wayland-util.c:359
#4 0xb6e5a089 in wl_map_for_each (map=0x9c435d0, func=0xb6e53a69 <destroy_resource>, data=0xbfd3e518) at src/wayland-util.c:365
#5 0xb6e53dce in wl_client_destroy (client=0x9c435b0) at src/wayland-server.c:709
#6 0xb6e533df in wl_client_connection_data (fd=117, mask=5, data=0x9c435b0) at src/wayland-server.c:248
#7 0xb6e55ff5 in wl_event_source_fd_dispatch (source=0x9bf4f90, ep=0xbfd3e60c) at src/event-loop.c:88
#8 0xb6e56a75 in wl_event_loop_dispatch (loop=0x9729070, timeout=0) at src/event-loop.c:421
#9 0xb6e6f638 in _cb_create_data (data=0x9775538, hdl=0x96379e8) at lib/ecore_wl2/ecore_wl2_display.c:206
#10 0xb70eb727 in _ecore_call_fd_cb (func=0xb6e6f592 <_cb_create_data>, data=0x9775538, fd_handler=0x96379e8) at lib/ecore/ecore_private.h:332
#11 0xb70eddbf in _ecore_main_fd_handlers_call () at lib/ecore/ecore_main.c:1972
#12 0xb70ee38d in _ecore_main_loop_iterate_internal (once_only=0) at lib/ecore/ecore_main.c:2336
#13 0xb70ec60d in ecore_main_loop_begin () at lib/ecore/ecore_main.c:1284
#14 0x0807a0b3 in main (argc=1, argv=0xbfd779f4) at src/bin/e_main.c:1087
(gdb)

ApB created this task.Apr 8 2016, 4:40 AM
ApB added projects: Restricted Project, enlightenment-git.
ApB reopened this task as Open.May 17 2016, 3:25 AM

Not fixed. While it doesn't seem to happen that often i still got it to crash.

coredumpctl gdb
           PID: 12438 (enlightenment)
           UID: 1000 (toliz)
           GID: 1000 (toliz)
        Signal: 11 (SEGV)
     Timestamp: Tue 2016-05-17 13:19:38 EEST (34s ago)
  Command Line: /usr/bin/enlightenment
    Executable: /usr/bin/enlightenment
 Control Group: /user.slice/user-1000.slice/session-c1.scope
          Unit: session-c1.scope
         Slice: user-1000.slice
       Session: c1
     Owner UID: 1000 (toliz)
       Boot ID: 4c5603618fcd4372bfb1eeddc1b45d6b
    Machine ID: 77c42d073644466287ad3d7a519e810c
      Hostname: testland
      Coredump: /var/lib/systemd/coredump/core.enlightenment.1000.4c5603618fcd4372bfb1eeddc1b45d6b.12438.1463480378000000000000.lz4
       Message: Process 12438 (enlightenment) of user 1000 dumped core.

                Stack trace of thread 12438:
                #0  0x00000000b4a4c968 _e_shell_surface_destroy (module.so)
                #1  0x00000000b4a4cabc _e_shell_surface_cb_destroy (module.so)
                #2  0x00000000b6e5fad3 destroy_resource (libwayland-server.so.0)
                #3  0x00000000b6e66055 for_each_helper (libwayland-server.so.0)
                #4  0x00000000b6e66089 wl_map_for_each (libwayland-server.so.0)
                #5  0x00000000b6e5fdce wl_client_destroy (libwayland-server.so.0)
                #6  0x00000000b6e5f3df wl_client_connection_data (libwayland-server.so.0)
                #7  0x00000000b6e61ff5 wl_event_source_fd_dispatch (libwayland-server.so.0)
                #8  0x00000000b6e62a75 wl_event_loop_dispatch (libwayland-server.so.0)
                #9  0x00000000b6e7bedd _cb_create_data (libecore_wl2.so.1)
                #10 0x00000000b70ffc34 _ecore_call_fd_cb (libecore.so.1)
                #11 0x00000000b7102308 _ecore_main_fd_handlers_call (libecore.so.1)
                #12 0x00000000b7102934 _ecore_main_loop_iterate_internal (libecore.so.1)
                #13 0x00000000b7100b56 ecore_main_loop_begin (libecore.so.1)
                #14 0x0000000008079fb6 main (enlightenment)
                #15 0x00000000b6b91536 __libc_start_main (libc.so.6)
                #16 0x00000000080745c1 _start (enlightenment)

GNU gdb (GDB) 7.11
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from /usr/bin/enlightenment...Reading symbols from /usr/lib/debug/usr/bin/enlightenment.debug...done.
done.
[New LWP 12438]
[New LWP 12439]
[New LWP 12445]

warning: Could not load shared library symbols for linux-gate.so.1.
Do you need "set solib-search-path" or "set sysroot"?
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
Core was generated by `/usr/bin/enlightenment'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0xb4a4c968 in _e_shell_surface_destroy (resource=0x8b2a190) at src/modules/wl_desktop_shell/e_mod_main.c:138
138                  E_FREE_LIST(shd->pending, free);
[Current thread is 1 (Thread 0xb5453a00 (LWP 12438))]
(gdb) bt
#0  0xb4a4c968 in _e_shell_surface_destroy (resource=0x8b2a190) at src/modules/wl_desktop_shell/e_mod_main.c:138
#1  0xb4a4cabc in _e_shell_surface_cb_destroy (resource=0x8b2a190) at src/modules/wl_desktop_shell/e_mod_main.c:162
#2  0xb6e5fad3 in destroy_resource (element=0x8b2a190, data=0xbff8ac48) at src/wayland-server.c:571
#3  0xb6e66055 in for_each_helper (entries=0x8c43b58, func=0xb6e5fa69 <destroy_resource>, data=0xbff8ac48) at src/wayland-util.c:359
#4  0xb6e66089 in wl_map_for_each (map=0x8c43b58, func=0xb6e5fa69 <destroy_resource>, data=0xbff8ac48) at src/wayland-util.c:365
#5  0xb6e5fdce in wl_client_destroy (client=0x8c43b38) at src/wayland-server.c:709
#6  0xb6e5f3df in wl_client_connection_data (fd=91, mask=5, data=0x8c43b38) at src/wayland-server.c:248
#7  0xb6e61ff5 in wl_event_source_fd_dispatch (source=0x8bfe220, ep=0xbff8ad3c) at src/event-loop.c:88
#8  0xb6e62a75 in wl_event_loop_dispatch (loop=0x862c928, timeout=0) at src/event-loop.c:421
#9  0xb6e7bedd in _cb_create_data (data=0x862c8b8, hdl=0x854ce30) at lib/ecore_wl2/ecore_wl2_display.c:232
#10 0xb70ffc34 in _ecore_call_fd_cb (func=0xb6e7bea3 <_cb_create_data>, data=0x862c8b8, fd_handler=0x854ce30) at lib/ecore/ecore_private.h:328
#11 0xb7102308 in _ecore_main_fd_handlers_call () at lib/ecore/ecore_main.c:1970
#12 0xb7102934 in _ecore_main_loop_iterate_internal (once_only=0) at lib/ecore/ecore_main.c:2335
#13 0xb7100b56 in ecore_main_loop_begin () at lib/ecore/ecore_main.c:1282
#14 0x08079fb6 in main (argc=1, argv=0xbffc4124) at src/bin/e_main.c:1082
(gdb)

So this was an easy fix but I'm holding the ticket open because wl_shell (and thus Qt support) is still, and I'm quoting, "a shitshow"