← Back to team overview

kicad-developers team mailing list archive

Strange crashes

 

I am using Fedora 28, and have just noticed a strange crash.  This happens with 5.0.0 and also with the latest nightly (r13432-e750382e).

I've got to assume I'm doing something wrong, but I am baffled, so I want to see what folks think.

I've attached a backtrace.  The way I cause this crash is to highlight a part in the design here:

https://www.dropbox.com/sh/46lxxedoalq0sdm/AABTNAmVP7wKjbv3_4hBcdcoa?dl=0

I've attached several screenshots for reference.

In "highlighted.png" you can see the part I've selected - an Atmel micro.  I type "E" to get the properties, and I wind up with a blank dialog as shown in "blank_alert.png".  It is at that point that I did the backtrace.

This is with the fallback version of the modern toolset.  If I try to switch to the accelerated toolset, I get an error that I need OpenGL 2.1 or higher.  However, I think I have OpenGL 3.3.0:

saf# glxinfo | grep "OpenGL version"
OpenGL version string: 3.3.0 NVIDIA 340.107

Here is the version info from my build of 5.0.0:

Application: kicad
Version: 5.0.0-2.fc28, release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.59.0 OpenSSL/1.1.0h zlib/1.2.11 libidn2/2.0.5 libpsl/0.20.2 (+libidn2/2.0.4) libssh/0.7.5/openssl/zlib nghttp2/1.32.0
Platform: Linux 4.17.9-200.fc28.x86_64 x86_64, 64 bit, Little endian, wxGTK
Build Info:
    wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8) GTK+ 2.24
    Boost: 1.66.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.59.0
    Compiler: GCC 8.1.1 with C++ ABI 1013

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=OFF
    KICAD_SCRIPTING_MODULES=OFF
    KICAD_SCRIPTING_WXPYTHON=OFF
    KICAD_SCRIPTING_ACTION_MENU=OFF
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=OFF

Please let me know what you think.  I'm mystified.

	Steve

saf$ gdb kicad
GNU gdb (GDB) Fedora 8.1-23.fc28
Copyright (C) 2018 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 "x86_64-redhat-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 kicad...Reading symbols from /home/sfalco/kicad...(no debugging symbols found)...done.
(no debugging symbols found)...done.
Missing separate debuginfos, use: dnf debuginfo-install kicad-5.0.0-2.fc28.x86_64
(gdb) run
Starting program: /usr/bin/kicad 
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
15:09:57: Warning: Mismatch between the program and library build versions detected.
The library used 3.0 (wchar_t,compiler with C++ ABI 1012,wx containers,compatible with 2.8),
and your program used 3.0 (wchar_t,compiler with C++ ABI 1013,wx containers,compatible with 2.8).
15:09:57: Debug: Checking template path '/usr/share/kicad/template' exists
15:09:57: Debug: Checking template path '/home/sfalco/kicad/template' exists
Detaching after fork from child process 10285.
Detaching after fork from child process 10287.
Detaching after fork from child process 10289.
Detaching after fork from child process 10291.
Detaching after fork from child process 10293.
Detaching after fork from child process 10318.
Detaching after fork from child process 10337.
Detaching after fork from child process 10359.
[New Thread 0x7fffd7431700 (LWP 10384)]
[New Thread 0x7fffd6c30700 (LWP 10385)]
[New Thread 0x7fffd642f700 (LWP 10386)]
03:09:58 PM: Debug: FileWatcherReset: add '/home/sfalco/kicad/new_weather/main/main.pretty'

03:09:58 PM: Debug: FileWatcherReset: add '/home/sfalco/kicad/new_weather/main/gerbers'

03:09:58 PM: Debug: FileWatcherReset: add '/home/sfalco/kicad/new_weather/main/gerbers-10_percent'

03:09:58 PM: Debug: FileWatcherReset: add '/home/sfalco/kicad/new_weather/main/gerbers-20_percent'

03:09:58 PM: Debug: FileWatcherReset: add '/home/sfalco/kicad/new_weather/main/rescue-backup'

warning: Loadable section ".note.gnu.property" outside of ELF segments
03:10:02 PM: Debug: Loading project '/home/sfalco/kicad/new_weather/main/main.pro' settings.
[New Thread 0x7fffd4994700 (LWP 10394)]
[New Thread 0x7fffc6c53700 (LWP 10395)]
[New Thread 0x7fffc6452700 (LWP 10396)]
[New Thread 0x7fffc5c51700 (LWP 10397)]
[New Thread 0x7fffc5450700 (LWP 10398)]
[New Thread 0x7fffc4c4f700 (LWP 10399)]
[New Thread 0x7fffc444e700 (LWP 10400)]
[New Thread 0x7fffc3c4d700 (LWP 10401)]
[New Thread 0x7fffc344c700 (LWP 10402)]
[New Thread 0x7fffc2c4b700 (LWP 10403)]
[New Thread 0x7fffc244a700 (LWP 10404)]
[Thread 0x7fffd642f700 (LWP 10386) exited]
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
warning: Loadable section ".note.gnu.property" outside of ELF segments
[New Thread 0x7fffd642f700 (LWP 10473)]
[New Thread 0x7fff7bfff700 (LWP 10474)]
[New Thread 0x7fff737fe700 (LWP 10475)]
[New Thread 0x7fff7b7fe700 (LWP 10476)]
[New Thread 0x7fff7affd700 (LWP 10477)]
[New Thread 0x7fff7a7fc700 (LWP 10478)]
[New Thread 0x7fff79ffb700 (LWP 10479)]
[New Thread 0x7fff797fa700 (LWP 10480)]
[New Thread 0x7fff78ff9700 (LWP 10481)]
[New Thread 0x7fff73fff700 (LWP 10482)]
[New Thread 0x7fff72ffd700 (LWP 10483)]
[New Thread 0x7fff727fc700 (LWP 10484)]
libGL error: No matching fbConfigs or visuals found
[Thread 0x7fffd642f700 (LWP 10473) exited]
[Thread 0x7fff72ffd700 (LWP 10483) exited]
[Thread 0x7fff727fc700 (LWP 10484) exited]
[Thread 0x7fff73fff700 (LWP 10482) exited]
[Thread 0x7fff78ff9700 (LWP 10481) exited]
[Thread 0x7fff797fa700 (LWP 10480) exited]
[Thread 0x7fff79ffb700 (LWP 10479) exited]
[Thread 0x7fff7a7fc700 (LWP 10478) exited]
[Thread 0x7fff7affd700 (LWP 10477) exited]
[Thread 0x7fff7b7fe700 (LWP 10476) exited]
[Thread 0x7fff737fe700 (LWP 10475) exited]
[Thread 0x7fff7bfff700 (LWP 10474) exited]
libGL error: failed to load driver: swrast
../src/gtk/window.cpp(2857): assert "m_widget" failed in DoSetSize(): invalid window

Thread 1 "kicad" received signal SIGSEGV, Segmentation fault.
0x00007ffff29da8c9 in gdk_window_set_geometry_hints ()
   from /lib64/libgdk-x11-2.0.so.0
(gdb) bt
#0  0x00007ffff29da8c9 in gdk_window_set_geometry_hints ()
    at /lib64/libgdk-x11-2.0.so.0
#1  0x00007ffff2eb671f in gtk_window_check_resize ()
    at /lib64/libgtk-x11-2.0.so.0
#2  0x00007ffff2720add in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#3  0x00007ffff2733774 in signal_emit_unlocked_R ()
    at /lib64/libgobject-2.0.so.0
#4  0x00007ffff273d06a in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#5  0x00007ffff273d663 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#6  0x00007ffff2ce6df8 in gtk_container_idle_sizer ()
    at /lib64/libgtk-x11-2.0.so.0
#7  0x00007ffff2981838 in gdk_threads_dispatch () at /lib64/libgdk-x11-2.0.so.0
#8  0x00007ffff19461cb in g_idle_dispatch () at /lib64/libglib-2.0.so.0
#9  0x00007ffff19498ad in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#10 0x00007ffff1949c78 in g_main_context_iterate.isra ()
    at /lib64/libglib-2.0.so.0
#11 0x00007ffff1949fa2 in g_main_loop_run () at /lib64/libglib-2.0.so.0
#12 0x00007ffff2cea703 in gtk_dialog_run () at /lib64/libgtk-x11-2.0.so.0
#13 0x00007ffff6cb082a in wxGUIAppTraits::ShowAssertDialog(wxString const&) ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#14 0x00007ffff6396e97 in ShowAssertDialog(wxString const&, int, wxString const&, wxString const&, wxString const&, wxAppTraits*) ()
    at /lib64/libwx_baseu-3.0.so.0
#15 0x00007ffff63970d4 in wxAppConsoleBase::OnAssertFailure(wchar_t const*, int, wchar_t const*, wchar_t const*, wchar_t const*) ()
    at /lib64/libwx_baseu-3.0.so.0
#16 0x00007ffff6c7efe4 in wxApp::OnAssertFailure(wchar_t const*, int, wchar_t const*, wchar_t const*, wchar_t const*) () at /lib64/libwx_gtk2u_core-3.0.so.0
#17 0x00007ffff63973a4 in wxDefaultAssertHandler(wxString const&, int, wxString const&, wxString const&, wxString const&) () at /lib64/libwx_baseu-3.0.so.0
#18 0x00007ffff639464a in wxOnAssert(char const*, int, char const*, char const*, char const*) () at /lib64/libwx_baseu-3.0.so.0
#19 0x00007ffff6cb2b03 in wxWindow::DoSetSize(int, int, int, int, int) ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#20 0x00007ffff6e3f45e in wxBoxSizer::RecalcSizes() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#21 0x00007ffff6e3cf32 in wxSizer::Layout() ()
---Type <return> to continue, or q <return> to quit---
    at /lib64/libwx_gtk2u_core-3.0.so.0
#22 0x00007ffff6e3cdf5 in wxSizerItem::SetDimension(wxPoint const&, wxSize const&) () at /lib64/libwx_gtk2u_core-3.0.so.0
#23 0x00007ffff6e3f45e in wxBoxSizer::RecalcSizes() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#24 0x00007ffff6e3cf32 in wxSizer::Layout() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#25 0x00007ffff6e3cdf5 in wxSizerItem::SetDimension(wxPoint const&, wxSize const&) () at /lib64/libwx_gtk2u_core-3.0.so.0
#26 0x00007ffff6e3f45e in wxBoxSizer::RecalcSizes() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#27 0x00007ffff6e3cf32 in wxSizer::Layout() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#28 0x00007ffff6e6f26a in wxWindowBase::Layout() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#29 0x00007ffff6e6a4ea in wxWindowBase::InternalOnSize(wxSizeEvent&) ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#30 0x00007ffff64fecf2 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () at /lib64/libwx_baseu-3.0.so.0
#31 0x00007ffff64fee03 in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) () at /lib64/libwx_baseu-3.0.so.0
#32 0x00007ffff64ff160 in wxEvtHandler::TryHereOnly(wxEvent&) ()
    at /lib64/libwx_baseu-3.0.so.0
#33 0x00007ffff64ff1eb in wxEvtHandler::ProcessEventLocally(wxEvent&) ()
    at /lib64/libwx_baseu-3.0.so.0
#34 0x00007ffff64ff281 in wxEvtHandler::ProcessEvent(wxEvent&) ()
    at /lib64/libwx_baseu-3.0.so.0
#35 0x00007ffff64ff01b in wxEvtHandler::SafelyProcessEvent(wxEvent&) ()
    at /lib64/libwx_baseu-3.0.so.0
#36 0x00007ffff6cb2a8c in wxWindow::DoSetSize(int, int, int, int, int) ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#37 0x00007ffff6e3f45e in wxBoxSizer::RecalcSizes() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#38 0x00007ffff6e3cf32 in wxSizer::Layout() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#39 0x00007ffff6e3cdf5 in wxSizerItem::SetDimension(wxPoint const&, wxSize const&) () at /lib64/libwx_gtk2u_core-3.0.so.0
---Type <return> to continue, or q <return> to quit---
#40 0x00007ffff6e3f45e in wxBoxSizer::RecalcSizes() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#41 0x00007ffff6e3cf32 in wxSizer::Layout() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#42 0x00007ffff6e6f26a in wxWindowBase::Layout() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#43 0x00007ffff6e6a4ea in wxWindowBase::InternalOnSize(wxSizeEvent&) ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#44 0x00007ffff64fecf2 in wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&) () at /lib64/libwx_baseu-3.0.so.0
#45 0x00007ffff64fee03 in wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*) () at /lib64/libwx_baseu-3.0.so.0
#46 0x00007ffff64ff160 in wxEvtHandler::TryHereOnly(wxEvent&) ()
    at /lib64/libwx_baseu-3.0.so.0
#47 0x00007ffff64ff1eb in wxEvtHandler::ProcessEventLocally(wxEvent&) ()
    at /lib64/libwx_baseu-3.0.so.0
#48 0x00007ffff64ff281 in wxEvtHandler::ProcessEvent(wxEvent&) ()
    at /lib64/libwx_baseu-3.0.so.0
#49 0x00007ffff64ff01b in wxEvtHandler::SafelyProcessEvent(wxEvent&) ()
    at /lib64/libwx_baseu-3.0.so.0
#50 0x00007ffff6cb431c in size_allocate () at /lib64/libwx_gtk2u_core-3.0.so.0
#51 0x00007ffff2720add in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#52 0x00007ffff2733f43 in signal_emit_unlocked_R ()
    at /lib64/libgobject-2.0.so.0
#53 0x00007ffff273d06a in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#54 0x00007ffff273d663 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#55 0x00007ffff2eaa083 in gtk_widget_size_allocate ()
    at /lib64/libgtk-x11-2.0.so.0
#56 0x00007ffff2d98bed in gtk_notebook_size_allocate ()
    at /lib64/libgtk-x11-2.0.so.0
#57 0x00007ffff27209f5 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#58 0x00007ffff27340e6 in signal_emit_unlocked_R ()
    at /lib64/libgobject-2.0.so.0
#59 0x00007ffff273d06a in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#60 0x00007ffff273d663 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#61 0x00007ffff2eaa083 in gtk_widget_size_allocate ()
    at /lib64/libgtk-x11-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#62 0x00007ffff6cb1a91 in pizza_size_allocate ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
#63 0x00007ffff27209f5 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#64 0x00007ffff27340e6 in signal_emit_unlocked_R ()
    at /lib64/libgobject-2.0.so.0
#65 0x00007ffff273d06a in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#66 0x00007ffff273d663 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#67 0x00007ffff2eaa083 in gtk_widget_size_allocate ()
    at /lib64/libgtk-x11-2.0.so.0
#68 0x00007ffff2cad0da in gtk_box_size_allocate ()
    at /lib64/libgtk-x11-2.0.so.0
#69 0x00007ffff27209f5 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#70 0x00007ffff27340e6 in signal_emit_unlocked_R ()
    at /lib64/libgobject-2.0.so.0
#71 0x00007ffff273d06a in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#72 0x00007ffff273d663 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#73 0x00007ffff2eaa083 in gtk_widget_size_allocate ()
    at /lib64/libgtk-x11-2.0.so.0
#74 0x00007ffff2eb6e6d in gtk_window_size_allocate ()
    at /lib64/libgtk-x11-2.0.so.0
#75 0x00007ffff2720add in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#76 0x00007ffff27340e6 in signal_emit_unlocked_R ()
    at /lib64/libgobject-2.0.so.0
#77 0x00007ffff273d06a in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#78 0x00007ffff273d663 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#79 0x00007ffff2eaa083 in gtk_widget_size_allocate ()
    at /lib64/libgtk-x11-2.0.so.0
#80 0x00007ffff2eb7b0b in gtk_window_show () at /lib64/libgtk-x11-2.0.so.0
#81 0x00007ffff2720add in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#82 0x00007ffff27340e6 in signal_emit_unlocked_R ()
    at /lib64/libgobject-2.0.so.0
#83 0x00007ffff273d06a in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#84 0x00007ffff273d663 in g_signal_emit () at /lib64/libgobject-2.0.so.0
#85 0x00007ffff2eabd96 in gtk_widget_show () at /lib64/libgtk-x11-2.0.so.0
#86 0x00007fffc759dd58 in DIALOG_SHIM::Show(bool) () at /usr/bin/_pcbnew.kiface
#87 0x00007ffff6d02ac2 in wxDialog::ShowModal() ()
    at /lib64/libwx_gtk2u_core-3.0.so.0
---Type <return> to continue, or q <return> to quit---
#88 0x00007fffc721fab6 in PCB_EDIT_FRAME::InstallFootprintPropertiesDialog(MODULE*, wxDC*) () at /usr/bin/_pcbnew.kiface
#89 0x00007fffc72a1bd8 in EDIT_TOOL::Properties(TOOL_EVENT const&) ()
    at /usr/bin/_pcbnew.kiface
#90 0x00007fffc7638b04 in COROUTINE<int, TOOL_EVENT const&>::callerStub(long) () at /usr/bin/_pcbnew.kiface
#91 0x00007fffc767fb41 in make_fcontext () at /usr/bin/_pcbnew.kiface
#92 0x000055555815f340 in  ()
#93 0x0000555557856570 in  ()
#94 0x0000000000000000 in  ()
(gdb) q
A debugging session is active.

        Inferior 1 [process 10277] will be killed.

Quit anyway? (y or n) y
saf$ 

Attachment: highlighted.png
Description: PNG image

Attachment: blank_alert.png
Description: PNG image


Follow ups