public inbox for gdb-prs@sourceware.org help / color / mirror / Atom feed
* [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. @ 2022-07-22 13:02 georgepee at gmail dot com 2022-07-25 15:27 ` [Bug backtrace/29395] " georgepee at gmail dot com ` (12 more replies) 0 siblings, 13 replies; 14+ messages in thread From: georgepee at gmail dot com @ 2022-07-22 13:02 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 Bug ID: 29395 Summary: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. Product: gdb Version: 11.1 Status: UNCONFIRMED Severity: normal Priority: P2 Component: backtrace Assignee: unassigned at sourceware dot org Reporter: georgepee at gmail dot com Target Milestone: --- Starting with gdb 11.x, I encounter this assertion failure on certain backtraces ../../gdb/blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. Not really knowing much about the GDB and DWARF structures, I did this as an experiment and then GDB 11.x shows the same backtrace that GDB 10.x did. ``` diff --git a/gdb/blockframe.c b/gdb/blockframe.c index 50c464f44a2..0ee8313abea 100644 --- a/gdb/blockframe.c +++ b/gdb/blockframe.c @@ -70,13 +70,12 @@ get_frame_block (struct frame_info *frame, CORE_ADDR *addr_in_block) inline_count = frame_inlined_callees (frame); - while (inline_count > 0) + while (bl && (inline_count > 0)) { if (block_inlined_p (bl)) - inline_count--; + inline_count--; bl = BLOCK_SUPERBLOCK (bl); - gdb_assert (bl != NULL); } return bl; ``` Comparing the values of frame_inlined_callees() from GDB 10.x and 11.x, I see that they differ. I also tried GDB 12.1, and it outputs this: ``` ../../gdb/blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. A problem internal to GDB has been detected, further debugging may prove unreliable. ----- Backtrace ----- 0x55a42dc123b7 gdb_internal_backtrace_1 ../../gdb/bt-utils.c:122 0x55a42dc123b7 _Z22gdb_internal_backtracev ../../gdb/bt-utils.c:168 0x55a42defaeec internal_vproblem ../../gdb/utils.c:394 0x55a42defb10a _Z15internal_verrorPKciS0_P13__va_list_tag ../../gdb/utils.c:471 0x55a42e034a71 _Z14internal_errorPKciS0_z ../../gdbsupport/errors.cc:55 0x55a42dbe9968 _Z15get_frame_blockP10frame_infoPm ../../gdb/blockframe.c:79 0x55a42dbe9968 _Z15get_frame_blockP10frame_infoPm ../../gdb/blockframe.c:55 0x55a42dc9e622 _ZN18dwarf_expr_context14get_frame_baseEPPKhPm ../../gdb/dwarf2/expr.c:782 0x55a42dca0346 _ZN18dwarf_expr_context16execute_stack_opEPKhS1_ ../../gdb/dwarf2/expr.c:1821 0x55a42dca1c53 _ZN18dwarf_expr_context4evalEPKhm ../../gdb/dwarf2/expr.c:1250 0x55a42dca1dee _ZN18dwarf_expr_context26push_dwarf_reg_entry_valueE24call_site_parameter_kind21call_site_parameter_ui ../../gdb/dwarf2/expr.c:914 0x55a42dca12bb _ZN18dwarf_expr_context16execute_stack_opEPKhS1_ ../../gdb/dwarf2/expr.c:2259 0x55a42dca1c53 _ZN18dwarf_expr_context4evalEPKhm ../../gdb/dwarf2/expr.c:1250 0x55a42dca1ea2 _ZN18dwarf_expr_context8evaluateEPKhmbP18dwarf2_per_cu_dataP10frame_infoPK18property_addr_infoP4typeSA_l ../../gdb/dwarf2/expr.c:1089 0x55a42dcb43a0 dwarf2_evaluate_loc_desc_full ../../gdb/dwarf2/loc.c:1485 0x55a42dcb4e37 _Z24dwarf2_evaluate_loc_descP4typeP10frame_infoPKhmP18dwarf2_per_cu_dataP18dwarf2_per_objfileb ../../gdb/dwarf2/loc.c:1529 0x55a42dcb4e37 loclist_read_variable ../../gdb/dwarf2/loc.c:3859 0x55a42dd14279 _ZNK13language_defn14read_var_valueEP6symbolPK5blockP10frame_info ../../gdb/findvar.c:617 0x55a42de8bbd0 _Z14read_frame_argRK19frame_print_optionsP6symbolP10frame_infoP9frame_argS7_ ../../gdb/stack.c:540 0x55a42de8c5c4 print_frame_args ../../gdb/stack.c:888 0x55a42de8ddb3 print_frame ../../gdb/stack.c:1391 0x55a42de8ddb3 _Z16print_frame_infoRK19frame_print_optionsP10frame_infoi10print_whatii ../../gdb/stack.c:1117 0x55a42de8f55a backtrace_command_1 ../../gdb/stack.c:2069 0x55a42de8f55a backtrace_command ../../gdb/stack.c:2188 0x55a42dc3e8a7 _Z8cmd_funcP16cmd_list_elementPKci ../../gdb/cli/cli-decode.c:2514 0x55a42dee0766 _Z15execute_commandPKci ../../gdb/top.c:702 0x55a42dcfce9b _Z15command_handlerPKc ../../gdb/event-top.c:597 0x55a42dcfd1cc _Z20command_line_handlerOSt10unique_ptrIcN3gdb13xfree_deleterIcEEE ../../gdb/event-top.c:800 0x55a42dcfd82c gdb_rl_callback_handler ../../gdb/event-top.c:229 0x7f9293ac8d4d ??? 0x55a42dcfc2dd gdb_rl_callback_read_char_wrapper_noexcept ../../gdb/event-top.c:187 0x55a42dcfd720 gdb_rl_callback_read_char_wrapper ../../gdb/event-top.c:204 0x55a42dcfc06f _Z19stdin_event_handleriPv ../../gdb/event-top.c:524 0x55a42e035554 gdb_wait_for_event ../../gdbsupport/event-loop.cc:700 0x55a42e03563a gdb_wait_for_event ../../gdbsupport/event-loop.cc:596 0x55a42e03563a _Z16gdb_do_one_eventv ../../gdbsupport/event-loop.cc:237 0x55a42ddb0b54 start_event_loop ../../gdb/main.c:421 0x55a42ddb0b54 captured_command_loop ../../gdb/main.c:481 0x55a42ddb2564 captured_main ../../gdb/main.c:1351 0x55a42ddb2564 _Z8gdb_mainP18captured_main_args ../../gdb/main.c:1366 0x55a42db5970a main ../../gdb/gdb.c:32 ``` -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com @ 2022-07-25 15:27 ` georgepee at gmail dot com 2022-08-24 13:20 ` georgepee at gmail dot com ` (11 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: georgepee at gmail dot com @ 2022-07-25 15:27 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 George Pee <georgepee at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Priority|P2 |P1 -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com 2022-07-25 15:27 ` [Bug backtrace/29395] " georgepee at gmail dot com @ 2022-08-24 13:20 ` georgepee at gmail dot com 2022-12-15 18:08 ` seth.pellegrino at gmail dot com ` (10 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: georgepee at gmail dot com @ 2022-08-24 13:20 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 George Pee <georgepee at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |georgepee at gmail dot com -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com 2022-07-25 15:27 ` [Bug backtrace/29395] " georgepee at gmail dot com 2022-08-24 13:20 ` georgepee at gmail dot com @ 2022-12-15 18:08 ` seth.pellegrino at gmail dot com 2022-12-15 18:11 ` simon.marchi at polymtl dot ca ` (9 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: seth.pellegrino at gmail dot com @ 2022-12-15 18:08 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 Seth Pellegrino <seth.pellegrino at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |seth.pellegrino at gmail dot com --- Comment #1 from Seth Pellegrino <seth.pellegrino at gmail dot com> --- I'm seeing the same assertion failure with booth 12.1 and the latest master (38665d717a3) when attaching to a corefile: immediately after starting up gdb, trying `bt` will yield the assertion failure. `maint set dwarf unwinders off` followed by `bt` does not crash, but doesn't yield much of a backtrace either. The core file (1.1GB) + binary + debug symbols (combined, 2.6GB) can be found here: https://f004.backblazeb2.com/file/shared-sethp/gdb-29395.tar.zstd (total compressed size: 1.2GB). I also threw in the core dumps from gdb itself, both from 12.1 (core.gdb.1000.d4a79394d6ce443f8e9e6308ab0afc23.216854.1671119608000000.zst) and master (core.gdb.1000.d4a79394d6ce443f8e9e6308ab0afc23.383687.1671123437000000.zst) because compressed they're only 65MB each (though they do both decompress to ~600MB). -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (2 preceding siblings ...) 2022-12-15 18:08 ` seth.pellegrino at gmail dot com @ 2022-12-15 18:11 ` simon.marchi at polymtl dot ca 2022-12-15 18:43 ` seth.pellegrino at gmail dot com ` (8 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: simon.marchi at polymtl dot ca @ 2022-12-15 18:11 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 Simon Marchi <simon.marchi at polymtl dot ca> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |simon.marchi at polymtl dot ca --- Comment #2 from Simon Marchi <simon.marchi at polymtl dot ca> --- I get this error when trying to download your link: { "code": "download_cap_exceeded", "message": "Cannot download file, download bandwidth or transaction (Class B) cap exceeded. See the Caps & Alerts page to increase your cap.", "status": 403 } I suppose it's not easy to make a small reproducer, right? -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (3 preceding siblings ...) 2022-12-15 18:11 ` simon.marchi at polymtl dot ca @ 2022-12-15 18:43 ` seth.pellegrino at gmail dot com 2022-12-15 19:14 ` simon.marchi at polymtl dot ca ` (7 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: seth.pellegrino at gmail dot com @ 2022-12-15 18:43 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 --- Comment #3 from Seth Pellegrino <seth.pellegrino at gmail dot com> --- (In reply to Simon Marchi from comment #2) > I get this error when trying to download your link: > > { > "code": "download_cap_exceeded", > "message": "Cannot download file, download bandwidth or transaction (Class > B) cap exceeded. See the Caps & Alerts page to increase your cap.", > "status": 403 > } > > I suppose it's not easy to make a small reproducer, right? Whoops, I've upped the cap to allow a couple more downloads per day: sorry about that! To your question, I've indeed got very few ideas how to reduce this case. It's not every kicad core that presents this way, so I think it's something specific to the memory corruption that happened as a result of a use-after-free bug (that I also don't know how to reproduce). I bet there is a much smaller test case, though. If you've got ideas on how, I'm happy to help shrink it if I can. -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (4 preceding siblings ...) 2022-12-15 18:43 ` seth.pellegrino at gmail dot com @ 2022-12-15 19:14 ` simon.marchi at polymtl dot ca 2022-12-15 20:09 ` simon.marchi at polymtl dot ca ` (6 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: simon.marchi at polymtl dot ca @ 2022-12-15 19:14 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 --- Comment #4 from Simon Marchi <simon.marchi at polymtl dot ca> --- Thanks, I got it. Can you give me a one-liner that triggers the crash for you? I did this and I don't see a crash: $ ./gdb -nx -q --data-directory=data-directory -ex "set sysroot /home/smarchi/build/binutils-gdb/gdb-29395" -ex "set debug-file-directory /home/smarchi/build/binutils-gdb/gdb-29395/usr/lib/debug" -ex "file /home/smarchi/build/binutils-gdb/gdb-29395/usr/bin/kicad " -ex "core /home/smarchi/build/binutils-gdb/gdb-29395/kicad-core-gdb-crasher" -ex bt -batch warning: Can't open file /dev/dri/renderD128 during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/site-packages/wx/_core.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /SYSV00000000 (deleted) during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/site-packages/wx/_stc.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/lib-dynload/_datetime.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /usr/share/fonts/noto/NotoSansMono-Regular.ttf during file-backed mapping note processing warning: Can't open file /home/seth/.cache/mesa_shader_cache/index during file-backed mapping note processing warning: Can't open file /usr/lib/libLLVM-14.so during file-backed mapping note processing warning: Can't open file /usr/lib/dri/radeonsi_dri.so during file-backed mapping note processing warning: Can't open file /memfd:pulseaudio (deleted) during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/site-packages/wx/siplib.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /usr/lib/libncursesw.so.6.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libedit.so.0.0.68 during file-backed mapping note processing warning: Can't open file /usr/lib/libdrm_nouveau.so.2.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libdrm_amdgpu.so.1.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libelf-0.188.so during file-backed mapping note processing warning: Can't open file /usr/lib/libdrm_radeon.so.1.0.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libsensors.so.5.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxshmfence.so.1.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxcb-sync.so.1.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxcb-dri3.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwayland-server.so.0.21.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libdrm.so.2.4.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxcb-xfixes.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxcb-dri2.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libglapi.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libEGL_mesa.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libOpenGL.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libGLX.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libGLdispatch.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libGLU.so.1.3.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libGL.so.1.7.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwx_gtk3u_propgrid-3.2.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/lib-dynload/select.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/lib-dynload/_posixsubprocess.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /usr/lib/librsvg-2.so.2.48.0 during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/lib-dynload/fcntl.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/lib-dynload/_struct.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /usr/share/icons/gnome/icon-theme.cache during file-backed mapping note processing warning: Can't open file /usr/share/icons/breeze/icon-theme.cache during file-backed mapping note processing warning: Can't open file /usr/lib/libasound.so.2.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxcb-present.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwx_gtk3u_gl-3.2.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/share/icons/Adwaita/icon-theme.cache during file-backed mapping note processing warning: Can't open file /usr/lib/libopus.so.0.8.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libFLAC.so.12.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libvorbisenc.so.2.0.12 during file-backed mapping note processing warning: Can't open file /usr/lib/libsndfile.so.1.0.34 during file-backed mapping note processing warning: Can't open file /usr/lib/pulseaudio/libpulsecommon-16.1.so during file-backed mapping note processing warning: Can't open file /usr/lib/libpulse.so.0.24.2 during file-backed mapping note processing warning: Can't open file /usr/share/fonts/noto/NotoSans-Italic.ttf during file-backed mapping note processing warning: Can't open file /usr/share/fonts/noto/NotoSans-Bold.ttf during file-backed mapping note processing warning: Can't open file /memfd:xshmfence (deleted) during file-backed mapping note processing warning: Can't open file /usr/lib/libX11-xcb.so.1.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libgbm.so.1.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libasyncns.so.0.3.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libEGL.so.1.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/gdk-pixbuf-2.0/2.10.0/loaders/libpixbufloader-svg.so during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/lib-dynload/_opcode.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /usr/lib/python3.10/lib-dynload/math.cpython-310-x86_64-linux-gnu.so during file-backed mapping note processing warning: Can't open file /home/seth/.local/share/icons/hicolor/icon-theme.cache during file-backed mapping note processing warning: Can't open file /usr/lib/libcanberra-0.30/libcanberra-alsa.so during file-backed mapping note processing warning: Can't open file /usr/lib/libnss_systemd.so.2 during file-backed mapping note processing warning: Can't open file /usr/share/icons/hicolor/icon-theme.cache during file-backed mapping note processing warning: Can't open file /usr/lib/libcanberra-0.30/libcanberra-pulse.so during file-backed mapping note processing warning: Can't open file /usr/lib/libcanberra-0.30/libcanberra-multi.so during file-backed mapping note processing warning: Can't open file /usr/share/mime/mime.cache during file-backed mapping note processing warning: Can't open file /usr/share/fonts/noto/NotoSans-Regular.ttf during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/f2e43df3287529323e79e7929dc44cc9-le64.cache-8 during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/923e285e415b1073c8df160bee08820f-le64.cache-8 during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/8d4af663993b81a124ee82e610bb31f9-le64.cache-8 during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/b67b32625a2bb51b023d3814a918f351-le64.cache-8 during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/491f45a0a771fef1c10b9b647a97fb82-le64.cache-8 during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/1dce2cb908b447e938fc03acd9b47fcf-le64.cache-8 during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/f6b893a7224233d96cb72fd88691c0b4-le64.cache-8 during file-backed mapping note processing warning: Can't open file /usr/share/locale/en/LC_MESSAGES/gtk30.mo during file-backed mapping note processing warning: Can't open file /home/seth/.local/share/mime/mime.cache during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/40a9d18f2870572023edd72623462882-le64.cache-8 during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/6ba42ae0000f58711b5caaf10d690066-le64.cache-8 during file-backed mapping note processing warning: Can't open file /var/cache/fontconfig/210c0516121708a580e22e6b1f9a103a-le64.cache-8 during file-backed mapping note processing warning: Can't open file /usr/share/locale/en/LC_MESSAGES/gtk30-properties.mo during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_CTYPE during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_NUMERIC during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_TIME during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_COLLATE during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_MONETARY during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_MESSAGES/SYS_LC_MESSAGES during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_PAPER during file-backed mapping note processing warning: Can't open file /usr/lib/gvfs/libgvfscommon.so during file-backed mapping note processing warning: Can't open file /usr/lib/libogg.so.0.8.5 during file-backed mapping note processing warning: Can't open file /usr/lib/libvorbis.so.0.4.9 during file-backed mapping note processing warning: Can't open file /usr/lib/libltdl.so.7.3.2 during file-backed mapping note processing warning: Can't open file /usr/lib/libtdb.so.1.4.7 during file-backed mapping note processing warning: Can't open file /usr/lib/libvorbisfile.so.3.3.8 during file-backed mapping note processing warning: Can't open file /usr/lib/libcanberra.so.0.2.5 during file-backed mapping note processing warning: Can't open file /usr/lib/libxkbfile.so.1.0.2 during file-backed mapping note processing warning: Can't open file /usr/lib/libxklavier.so.16.4.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxapp.so.2.4.2 during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_NAME during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_ADDRESS during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_TELEPHONE during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_MEASUREMENT during file-backed mapping note processing warning: Can't open file /usr/lib/locale/C.UTF-8/LC_IDENTIFICATION during file-backed mapping note processing warning: Can't open file /usr/lib/gtk-3.0/modules/libcolorreload-gtk-module.so during file-backed mapping note processing warning: Can't open file /usr/lib/gio/modules/libgvfsdbus.so during file-backed mapping note processing warning: Can't open file /usr/lib/locale/locale-archive during file-backed mapping note processing warning: Can't open file /usr/lib/liblz4.so.1.9.4 during file-backed mapping note processing warning: Can't open file /usr/lib/libcap.so.2.66 during file-backed mapping note processing warning: Can't open file /usr/lib/libicudata.so.72.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libsystemd.so.0.34.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libtss2-sys.so.1.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libgpg-error.so.0.33.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libXdmcp.so.6.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libXau.so.6.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libbz2.so.1.0.8 during file-backed mapping note processing warning: Can't open file /usr/lib/libdatrie.so.1.4.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libbrotlicommon.so.1.0.9 during file-backed mapping note processing warning: Can't open file /usr/lib/libresolv.so.2 during file-backed mapping note processing warning: Can't open file /usr/lib/libkeyutils.so.1.10 during file-backed mapping note processing warning: Can't open file /usr/lib/libkrb5support.so.0.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libcom_err.so.2.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libk5crypto.so.3.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libkrb5.so.3.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libunistring.so.5.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libblkid.so.1.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libsqlite3.so.0.8.6 during file-backed mapping note processing warning: Can't open file /usr/lib/libxml2.so.2.10.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libjson-glib-1.0.so.0.600.6 during file-backed mapping note processing warning: Can't open file /usr/lib/libicui18n.so.72.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libicuuc.so.72.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libstemmer.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libdbus-1.so.3.32.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libatspi.so.0.0.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libgraphite2.so.3.2.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libtss2-tctildr.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libtss2-rc.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libtss2-mu.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libtss2-esys.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libgcrypt.so.20.4.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libpixman-1.so.0.42.2 during file-backed mapping note processing warning: Can't open file /usr/lib/libxcb-shm.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxcb-render.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxcb.so.1.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libXrender.so.1.3.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libfreetype.so.6.18.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libthai.so.0.3.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libbrotlidec.so.1.0.9 during file-backed mapping note processing warning: Can't open file /usr/lib/libzstd.so.1.5.2 during file-backed mapping note processing warning: Can't open file /usr/lib/libgssapi_krb5.so.2.2 during file-backed mapping note processing warning: Can't open file /usr/lib/libcrypto.so.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libssl.so.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libpsl.so.5.3.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libssh2.so.1.0.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libidn2.so.0.3.8 during file-backed mapping note processing warning: Can't open file /usr/lib/libnghttp2.so.14.24.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libpcre2-8.so.0.11.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libffi.so.8.1.2 during file-backed mapping note processing warning: Can't open file /usr/lib/libmount.so.1.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libXinerama.so.1.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libXrandr.so.2.2.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libXcomposite.so.1.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libXdamage.so.1.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libXcursor.so.1.0.2 during file-backed mapping note processing warning: Can't open file /usr/lib/libXext.so.6.4.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwayland-egl.so.1.21.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwayland-client.so.0.21.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libxkbcommon.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libXfixes.so.3.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libtracker-sparql-3.0.so.0.401.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libcloudproviders.so.0.3.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libatk-bridge-2.0.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libXi.so.6.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libepoxy.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libatk-1.0.so.0.24609.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libcairo-gobject.so.2.11706.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libfribidi.so.0.4.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libharfbuzz.so.0.50301.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libgmodule-2.0.so.0.7400.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libexpat.so.1.8.10 during file-backed mapping note processing warning: Can't open file /usr/lib/libsecret-1.so.0.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/liblzma.so.5.2.9 during file-backed mapping note processing warning: Can't open file /usr/lib/libpcre2-32.so.0.11.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libz.so.1.2.13 during file-backed mapping note processing warning: Can't open file /usr/lib/libnotify.so.4.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libSDL2-2.0.so.0.2600.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libpangoft2-1.0.so.0.5000.12 during file-backed mapping note processing warning: Can't open file /usr/lib/libfontconfig.so.1.13.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libtiff.so.5.8.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libpng16.so.16.39.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libjpeg.so.8.2.2 during file-backed mapping note processing warning: Can't open file /usr/lib/libXtst.so.6.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libX11.so.6.4.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libgdk_pixbuf-2.0.so.0.4200.10 during file-backed mapping note processing warning: Can't open file /usr/lib/libcairo.so.2.11706.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libpango-1.0.so.0.5000.12 during file-backed mapping note processing warning: Can't open file /usr/lib/libpangocairo-1.0.so.0.5000.12 during file-backed mapping note processing warning: Can't open file /usr/lib/libmspack.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libc.so.6 during file-backed mapping note processing warning: Can't open file /usr/lib/libgcc_s.so.1 during file-backed mapping note processing warning: Can't open file /usr/lib/libm.so.6 during file-backed mapping note processing warning: Can't open file /usr/lib/libstdc++.so.6.0.30 during file-backed mapping note processing warning: Can't open file /usr/lib/libpython3.10.so.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libcurl.so.4.8.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libglib-2.0.so.0.7400.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libgobject-2.0.so.0.7400.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libgio-2.0.so.0.7400.3 during file-backed mapping note processing warning: Can't open file /usr/lib/libgdk-3.so.0.2404.31 during file-backed mapping note processing warning: Can't open file /usr/lib/libgtk-3.so.0.2404.31 during file-backed mapping note processing warning: Can't open file /usr/lib/libwx_gtk3u_stc-3.2.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwx_baseu_xml-3.2.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwx_baseu-3.2.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwx_baseu_net-3.2.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwx_gtk3u_core-3.2.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwx_gtk3u_html-3.2.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libwx_gtk3u_aui-3.2.so.0.1.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libcanberra-gtk3.so.0.1.9 during file-backed mapping note processing warning: Can't open file /usr/lib/gtk-3.0/modules/libcanberra-gtk3-module.so during file-backed mapping note processing warning: Can't open file /usr/lib/libgnomekbd.so.8.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/libgnomekbdui.so.8.0.0 during file-backed mapping note processing warning: Can't open file /usr/lib/gtk-3.0/modules/libxapp-gtk3-module.so during file-backed mapping note processing warning: Can't open file /usr/lib/gconv/UTF-32.so during file-backed mapping note processing warning: Can't open file /usr/lib/ld-linux-x86-64.so.2 during file-backed mapping note processing [New LWP 1377780] [New LWP 1377873] [New LWP 1377872] [New LWP 1841802] [New LWP 1631101] [New LWP 1377863] [New LWP 1377871] [New LWP 1377782] [New LWP 1377781] [New LWP 1377874] warning: Could not load shared library symbols for 181 libraries, e.g. /usr/lib/libwx_gtk3u_aui-3.2.so.0. Use the "info sharedlibrary" command to see the complete listing. Do you need "set solib-search-path" or "set sysroot"? Core was generated by `/usr/bin/kicad'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007f8ecc3629f7 in ?? () [Current thread is 1 (LWP 1377780)] #0 0x00007f8ecc3629f7 in ?? () #1 0x000055653993e7ac in wmemcpy (__n=1686, __s2=<optimized out>, __s1=<optimized out>) at /usr/include/bits/wchar2.h:39 #2 std::char_traits<wchar_t>::copy (__n=1686, __s2=<optimized out>, __s1=<optimized out>) at /usr/include/c++/12.2.0/bits/char_traits.h:558 #3 std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_S_copy (__n=1686, __s=<optimized out>, __d=<optimized out>) at /usr/include/c++/12.2.0/bits/basic_string.h:423 #4 std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::_M_assign (this=0x5565438d87c8, __str=...) at /usr/include/c++/12.2.0/bits/basic_string.tcc:291 #5 0x00007f8e60f1bd14 in std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::assign (__str=..., this=0x5565438d87c8) at /usr/include/c++/12.2.0/bits/basic_string.h:1571 #6 std::__cxx11::basic_string<wchar_t, std::char_traits<wchar_t>, std::allocator<wchar_t> >::operator= (__str=..., this=0x5565438d87c8) at /usr/include/c++/12.2.0/bits/basic_string.h:805 #7 wxString::operator= (stringSrc=..., this=0x5565438d87c8) at /usr/include/wx-3.2/wx/string.h:1892 #8 EDA_BASE_FRAME::SaveWindowSettings (this=0x55653db8e450, aCfg=0x5565438d8780) at /usr/src/debug/kicad/kicad/common/eda_base_frame.cpp:763 #9 0x00007f8e60f1cac5 in EDA_BASE_FRAME::SaveSettings (this=0x55653db8e450, aCfg=0x5565438d8540) at /usr/src/debug/kicad/kicad/common/eda_base_frame.cpp:785 #10 0x00007f8e60f2ba14 in EDA_DRAW_FRAME::SaveSettings (this=0x55653db8e450, aCfg=0x5565438d8540) at /usr/src/debug/kicad/kicad/common/eda_draw_frame.cpp:612 #11 0x00007f8e60babdd6 in PCB_BASE_FRAME::SaveSettings (this=0x55653db8e450, aCfg=0x5565438d8540) at /usr/src/debug/kicad/kicad/pcbnew/pcb_base_frame.cpp:831 #12 0x00007f8e606805c6 in FOOTPRINT_EDIT_FRAME::SaveSettings (this=0x55653db8e450, aCfg=<optimized out>) at /usr/src/debug/kicad/kicad/pcbnew/footprint_edit_frame.cpp:584 #13 0x00007f8e60f13124 in EDA_BASE_FRAME::windowClosing (event=..., this=0x55653db8e450) at /usr/src/debug/kicad/kicad/common/eda_base_frame.cpp:228 #14 EDA_BASE_FRAME::windowClosing (this=0x55653db8e450, event=...) at /usr/src/debug/kicad/kicad/common/eda_base_frame.cpp:196 #15 0x00007f8ecdb6d452 in ?? () #16 0x00007ffd810b2b80 in ?? () #17 0x00007f8ecdb6fe17 in ?? () #18 0x0000000000000000 in ?? () -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (5 preceding siblings ...) 2022-12-15 19:14 ` simon.marchi at polymtl dot ca @ 2022-12-15 20:09 ` simon.marchi at polymtl dot ca 2022-12-15 20:27 ` simon.marchi at polymtl dot ca ` (5 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: simon.marchi at polymtl dot ca @ 2022-12-15 20:09 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 --- Comment #5 from Simon Marchi <simon.marchi at polymtl dot ca> --- Ok, I got it to crash by installing the Arch Linux packages you provided on Arch Linux system, and then: $ /usr/bin/gdb /usr/bin/kicad -c kicad-core-gdb-crasher I then tried using my own build of GDB, it wouldn't crash. I rebuilt the Arch package with debug info to understand where it crashes, it's within a frame-filter implementation. To reproduce the crash, we need this to be loaded: (gdb) info frame-filter objfile /usr/lib/libgobject-2.0.so.0 frame-filters: Priority Enabled Name 100 Yes glib So, I was able to get the crash on master with: $ /home/simark/build/binutils-gdb-opt/gdb/gdb -nx --data-directory=/home/simark/build/binutils-gdb-opt/gdb/data-directory -iex "add-auto-load-scripts-directory /usr/share/gdb/auto-load" -iex "set auto-load safe-path /" -q /usr/bin/kicad -c ../gdb-29395/kicad-core-gdb-crasher -ex bt -batch (top-gdb) bt #0 internal_error_loc (file=file@entry=0x555555b56080 "/home/simark/src/binutils-gdb/gdb/blockframe.c", line=line@entry=79, fmt=fmt@entry=0x555555b55d40 "%s: Assertion `%s' failed.") at /home/simark/src/binutils-gdb/gdbsupport/errors.cc:54 #1 0x00005555560c2129 in get_frame_block (frame=..., addr_in_block=addr_in_block@entry=0x0) at /home/simark/src/binutils-gdb/gdb/blockframe.c:79 #2 0x00005555560c2d84 in get_frame_function (frame=...) at /home/simark/src/binutils-gdb/gdb/blockframe.c:120 #3 0x0000555556d4ff8b in find_frame_funname (frame=..., funlang=funlang@entry=0x7fffffffaa20, funcp=funcp@entry=0x7fffffffaa30) at /home/simark/src/binutils-gdb/gdb/stack.c:1288 #4 0x0000555556aff348 in frapy_function (self=<optimized out>, args=<optimized out>) at /home/simark/src/binutils-gdb/gdb/python/py-frame.c:329 #5 0x00007ffff7358204 in method_vectorcall_NOARGS (func=0x7ffff201f420, args=0x7ffff20eb2b8, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/descrobject.c:432 #6 0x00007ffff7344f4a in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=0x7ffff20eb2b8, callable=0x7ffff201f420, tstate=0x6120000c5ec0) at ./Include/cpython/abstract.h:114 #7 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=0x7ffff20eb2b8, callable=0x7ffff201f420) at ./Include/cpython/abstract.h:123 #8 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>, trace_info=0x7fffffffacf0, tstate=<optimized out>) at Python/ceval.c:5891 #9 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=0x7ffff20eb130, throwflag=<optimized out>) at Python/ceval.c:4198 #10 0x00007ffff7355959 in _PyEval_EvalFrame (throwflag=0, f=0x7ffff20eb130, tstate=0x6120000c5ec0) at ./Include/internal/pycore_ceval.h:46 #11 _PyEval_Vector (kwnames=<optimized out>, argcount=<optimized out>, args=<optimized out>, locals=0x0, con=0x7ffff20ec560, tstate=0x6120000c5ec0) at Python/ceval.c:5065 #12 _PyFunction_Vectorcall (func=0x7ffff20ec550, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:342 #13 0x00007ffff7344f4a in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=0x7fffe94f1398, callable=0x7ffff20ec550, tstate=0x6120000c5ec0) at ./Include/cpython/abstract.h:114 #14 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=0x7fffe94f1398, callable=0x7ffff20ec550) at ./Include/cpython/abstract.h:123 #15 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>, trace_info=0x7fffffffaeb0, tstate=<optimized out>) at Python/ceval.c:5891 #16 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=0x7fffe94f1220, throwflag=<optimized out>) at Python/ceval.c:4198 #17 0x00007ffff7355959 in _PyEval_EvalFrame (throwflag=0, f=0x7fffe94f1220, tstate=0x6120000c5ec0) at ./Include/internal/pycore_ceval.h:46 #18 _PyEval_Vector (kwnames=<optimized out>, argcount=<optimized out>, args=<optimized out>, locals=0x0, con=0x7fffe9555130, tstate=0x6120000c5ec0) at Python/ceval.c:5065 #19 _PyFunction_Vectorcall (func=0x7fffe9555120, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:342 #20 0x00007ffff7344b16 in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=<optimized out>, callable=0x7fffe9555120, tstate=0x6120000c5ec0) at ./Include/cpython/abstract.h:114 #21 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=<optimized out>, callable=0x7fffe9555120) at ./Include/cpython/abstract.h:123 #22 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>, trace_info=0x7fffffffb070, tstate=<optimized out>) at Python/ceval.c:5891 #23 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=0x7ffff20eaf80, throwflag=<optimized out>) at Python/ceval.c:4213 #24 0x00007ffff7355959 in _PyEval_EvalFrame (throwflag=0, f=0x7ffff20eaf80, tstate=0x6120000c5ec0) at ./Include/internal/pycore_ceval.h:46 #25 _PyEval_Vector (kwnames=<optimized out>, argcount=<optimized out>, args=<optimized out>, locals=0x0, con=0x7fffe9555a30, tstate=0x6120000c5ec0) at Python/ceval.c:5065 #26 _PyFunction_Vectorcall (func=0x7fffe9555a20, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:342 #27 0x00007ffff7344f4a in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=0x7ffff2086b90, callable=0x7fffe9555a20, tstate=0x6120000c5ec0) at ./Include/cpython/abstract.h:114 #28 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=0x7ffff2086b90, callable=0x7fffe9555a20) at ./Include/cpython/abstract.h:123 #29 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>, trace_info=0x7fffffffb230, tstate=<optimized out>) at Python/ceval.c:5891 #30 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=0x7ffff20869f0, throwflag=<optimized out>) at Python/ceval.c:4198 #31 0x00007ffff7355959 in _PyEval_EvalFrame (throwflag=0, f=0x7ffff20869f0, tstate=0x6120000c5ec0) at ./Include/internal/pycore_ceval.h:46 #32 _PyEval_Vector (kwnames=<optimized out>, argcount=<optimized out>, args=<optimized out>, locals=0x0, con=0x7fffe9555ac0, tstate=0x6120000c5ec0) at Python/ceval.c:5065 #33 _PyFunction_Vectorcall (func=0x7fffe9555ab0, stack=<optimized out>, nargsf=<optimized out>, kwnames=<optimized out>) at Objects/call.c:342 #34 0x00007ffff7344f4a in _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=0x7ffff2090b10, callable=0x7fffe9555ab0, tstate=0x6120000c5ec0) at ./Include/cpython/abstract.h:114 #35 PyObject_Vectorcall (kwnames=0x0, nargsf=<optimized out>, args=0x7ffff2090b10, callable=0x7fffe9555ab0) at ./Include/cpython/abstract.h:123 #36 call_function (kwnames=0x0, oparg=<optimized out>, pp_stack=<synthetic pointer>, trace_info=0x7fffffffb3f0, tstate=<optimized out>) at Python/ceval.c:5891 #37 _PyEval_EvalFrameDefault (tstate=<optimized out>, f=0x7ffff20909a0, throwflag=<optimized out>) at Python/ceval.c:4198 #38 0x00007ffff73ad757 in _PyEval_EvalFrame (throwflag=0, f=0x7ffff20909a0, tstate=0x6120000c5ec0) at ./Include/internal/pycore_ceval.h:46 #39 _PyEval_Vector (kwnames=0x0, argcount=<optimized out>, args=<optimized out>, locals=0x0, con=0x7fffe9555b50, tstate=0x6120000c5ec0) at Python/ceval.c:5065 #40 _PyFunction_Vectorcall (kwnames=0x0, nargsf=1, stack=<optimized out>, func=0x7fffe9555b40) at Objects/call.c:342 #41 _PyObject_VectorcallTstate (kwnames=0x0, nargsf=<optimized out>, args=<optimized out>, callable=0x7fffe9555b40, tstate=0x6120000c5ec0) at ./Include/cpython/abstract.h:114 #42 vectorcall_unbound (nargs=<optimized out>, args=<optimized out>, func=<optimized out>, unbound=<optimized out>, tstate=<optimized out>) at Objects/typeobject.c:1629 #43 vectorcall_method (name=<optimized out>, args=<optimized out>, nargs=<optimized out>) at Objects/typeobject.c:1661 #44 0x00007ffff73dbab0 in slot_tp_iternext (self=<optimized out>) at Objects/typeobject.c:7672 #45 0x00007ffff73e134d in islice_next (lz=0x7fffe95c5030) at ./Modules/itertoolsmodule.c:1729 #46 0x00007ffff7339894 in PyIter_Next (iter=<optimized out>) at Objects/abstract.c:2874 #47 0x0000555556b0bbbf in gdbpy_apply_frame_filter (extlang=<optimized out>, frame=..., flags=..., args_type=<optimized out>, out=<optimized out>, frame_low=<optimized out>, frame_high=-1) at /home/simark/src/binutils-gdb/gdb/python/py-framefilter.c:1205 #48 0x00005555565aff8d in apply_ext_lang_frame_filter (frame=..., flags=..., args_type=args_type@entry=CLI_SCALAR_VALUES, out=out@entry=0x60b000041800, frame_low=frame_low@entry=0, frame_high=frame_high@entry=-1) at /home/simark/src/binutils-gdb/gdb/extension.c:541 #49 0x0000555556d5f6e2 in backtrace_command_1 (from_tty=0, count_exp=0x0, bt_opts=..., fp_opts=...) at /home/simark/src/binutils-gdb/gdb/stack.c:2051 #50 backtrace_command (arg=<optimized out>, from_tty=<optimized out>) at /home/simark/src/binutils-gdb/gdb/stack.c:2192 #51 0x000055555625e667 in cmd_func (cmd=0x61200008bcc0, args=<optimized out>, from_tty=<optimized out>) at /home/simark/src/binutils-gdb/gdb/cli/cli-decode.c:2543 #52 0x0000555556eebc83 in execute_command (p=<optimized out>, from_tty=<optimized out>) at /home/simark/src/binutils-gdb/gdb/top.c:697 #53 0x00005555569151d6 in catch_command_errors (command=<optimized out>, arg=<optimized out>, from_tty=<optimized out>, do_bp_actions=do_bp_actions@entry=true) at /home/simark/src/binutils-gdb/gdb/main.c:513 #54 0x00005555569154cf in execute_cmdargs (cmdarg_vec=cmdarg_vec@entry=0x7fffffffce90, file_type=file_type@entry=CMDARG_FILE, cmd_type=cmd_type@entry=CMDARG_COMMAND, ret=ret@entry=0x7fffffffca50) at /home/simark/src/binutils-gdb/gdb/main.c:608 #55 0x000055555691c610 in captured_main_1 (context=context@entry=0x7fffffffd490) at /home/simark/src/binutils-gdb/gdb/main.c:1299 #56 0x000055555691d9eb in captured_main (data=data@entry=0x7fffffffd490) at /home/simark/src/binutils-gdb/gdb/main.c:1320 #57 gdb_main (args=args@entry=0x7fffffffd490) at /home/simark/src/binutils-gdb/gdb/main.c:1345 #58 0x0000555555f639bb in main (argc=14, argv=0x7fffffffd638) at /home/simark/src/binutils-gdb/gdb/gdb.c:32 PS: I think you'll find the master branch of GDB (to be GDB 13) much faster to initially load the debug info, thanks to Tom Tromey's DWARF reader refactor. I can really see the difference with binaries of this size, between 12 and master. -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (6 preceding siblings ...) 2022-12-15 20:09 ` simon.marchi at polymtl dot ca @ 2022-12-15 20:27 ` simon.marchi at polymtl dot ca 2022-12-15 21:02 ` seth.pellegrino at gmail dot com ` (4 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: simon.marchi at polymtl dot ca @ 2022-12-15 20:27 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 --- Comment #6 from Simon Marchi <simon.marchi at polymtl dot ca> --- > $ /home/simark/build/binutils-gdb-opt/gdb/gdb -nx > --data-directory=/home/simark/build/binutils-gdb-opt/gdb/data-directory -iex > "add-auto-load-scripts-directory /usr/share/gdb/auto-load" -iex "set > auto-load safe-path /" -q /usr/bin/kicad -c > ../gdb-29395/kicad-core-gdb-crasher -ex bt -batch Note: throw in -iex "set debug-file-directory /usr/lib/debug" as well, if not already configured like that. -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (7 preceding siblings ...) 2022-12-15 20:27 ` simon.marchi at polymtl dot ca @ 2022-12-15 21:02 ` seth.pellegrino at gmail dot com 2022-12-15 21:12 ` simon.marchi at polymtl dot ca ` (3 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: seth.pellegrino at gmail dot com @ 2022-12-15 21:02 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 --- Comment #7 from Seth Pellegrino <seth.pellegrino at gmail dot com> --- (In reply to Simon Marchi from comment #5) > Ok, I got it to crash by installing the Arch Linux packages you provided on > Arch Linux system, and then: > > $ /usr/bin/gdb /usr/bin/kicad -c kicad-core-gdb-crasher > > I then tried using my own build of GDB, it wouldn't crash. I rebuilt the > Arch package with debug info to understand where it crashes, it's within a > frame-filter implementation. To reproduce the crash, we need this to be > loaded: > > [ ... ] Oh, interesting: so it's something particular about the way the arch package is built? Is that frame-filter something I can turn off to avoid the crash for now? > > PS: I think you'll find the master branch of GDB (to be GDB 13) much faster > to initially load the debug info, thanks to Tom Tromey's DWARF reader > refactor. I can really see the difference with binaries of this size, > between 12 and master. Oh neat! I'll have to check that out: I've definitely been feeling the time it takes to load the debug info loading so far. -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (8 preceding siblings ...) 2022-12-15 21:02 ` seth.pellegrino at gmail dot com @ 2022-12-15 21:12 ` simon.marchi at polymtl dot ca 2022-12-16 16:27 ` tromey at sourceware dot org ` (2 subsequent siblings) 12 siblings, 0 replies; 14+ messages in thread From: simon.marchi at polymtl dot ca @ 2022-12-15 21:12 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 --- Comment #8 from Simon Marchi <simon.marchi at polymtl dot ca> --- (In reply to Seth Pellegrino from comment #7) > (In reply to Simon Marchi from comment #5) > > Ok, I got it to crash by installing the Arch Linux packages you provided on > > Arch Linux system, and then: > > > > $ /usr/bin/gdb /usr/bin/kicad -c kicad-core-gdb-crasher > > > > I then tried using my own build of GDB, it wouldn't crash. I rebuilt the > > Arch package with debug info to understand where it crashes, it's within a > > frame-filter implementation. To reproduce the crash, we need this to be > > loaded: > > > > [ ... ] > > Oh, interesting: so it's something particular about the way the arch package > is built? Is that frame-filter something I can turn off to avoid the crash > for now? No, just that by default, when you build GDB from source (or pretty much any other package using autotools), it defaults to using the /usr/local prefix. So my local build was looking for separate debug info in /usr/local/lib/debug, didn't find the required debug info, and therefore didn't crash. By telling it to search in /usr/lib/debug, it finds the debug info and hits the bug. You can disable the frame-filter by with the "disable frame-filter" command. Then confirm it is disabled with "info frame-filter". See: https://sourceware.org/gdb/onlinedocs/gdb/Frame-Filter-Management.html -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (9 preceding siblings ...) 2022-12-15 21:12 ` simon.marchi at polymtl dot ca @ 2022-12-16 16:27 ` tromey at sourceware dot org 2022-12-20 23:03 ` simark at simark dot ca 2022-12-21 4:49 ` simark at simark dot ca 12 siblings, 0 replies; 14+ messages in thread From: tromey at sourceware dot org @ 2022-12-16 16:27 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 Tom Tromey <tromey at sourceware dot org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |tromey at sourceware dot org -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (10 preceding siblings ...) 2022-12-16 16:27 ` tromey at sourceware dot org @ 2022-12-20 23:03 ` simark at simark dot ca 2022-12-21 4:49 ` simark at simark dot ca 12 siblings, 0 replies; 14+ messages in thread From: simark at simark dot ca @ 2022-12-20 23:03 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 Simon Marchi <simark at simark dot ca> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |simark at simark dot ca --- Comment #9 from Simon Marchi <simark at simark dot ca> --- I dissected the debug info a bit while looking at what GDB is doing. The execution is stopped in this hierarchy, in /usr/bin/kicad: 0x0000057d: DW_TAG_compile_unit DW_AT_producer ("GNU C++14 12.2.0 -march=x86-64 -mtune=generic -g -g -O2 -O2 -std=c++14 -fno-plt -fexceptions -fstack-clash-protection -fcf-protection=full -fPIE -fvisibility=hidden -fvisibility-inlines-hidden") DW_AT_language (DW_LANG_C_plus_plus_14) DW_AT_name ("/usr/src/debug/kicad/kicad/kicad/dialogs/dialog_template_selector_base.cpp") DW_AT_comp_dir ("/usr/src/debug/kicad/build/kicad") DW_AT_ranges (0x0000187d ... snip ... DW_AT_low_pc (0x0000000000000000) DW_AT_stmt_list (0x00000178) 0x00031917: DW_TAG_subprogram DW_AT_specification (0x00009a0c "_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_assignERKS4_") DW_AT_decl_file ("/usr/include/c++/12.2.0/bits/basic_string.tcc") DW_AT_decl_line (273) DW_AT_decl_column (0x05) DW_AT_object_pointer (0x0003193b) DW_AT_low_pc (0x00000000002946d0) DW_AT_high_pc (0x00000000002947c8) DW_AT_frame_base (DW_OP_call_frame_cfa) DW_AT_call_all_calls (true) DW_AT_sibling (0x00031ecf) 0x00031961: DW_TAG_lexical_block DW_AT_ranges (0x000017a0 [0x00000000002946f5, 0x0000000000294729) [0x0000000000294750, 0x00000000002947c2)) DW_AT_sibling (0x00031ec1) 0x00031c77: DW_TAG_inlined_subroutine DW_AT_abstract_origin (0x000327c8 "_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE13_M_set_lengthEm") DW_AT_entry_pc (0x000000000029471d) DW_AT_GNU_entry_view (0x0000) DW_AT_ranges (0x00001846 [0x000000000029471d, 0x0000000000294729) [0x00000000002947ac, 0x00000000002947b8)) DW_AT_call_file ("/usr/include/c++/12.2.0/bits/basic_string.tcc") DW_AT_call_line (293) DW_AT_call_column (0x11) DW_AT_sibling (0x00031d4e) 0x00031cee: DW_TAG_inlined_subroutine DW_AT_abstract_origin (0x0003290b "_ZNKSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE7_M_dataEv") DW_AT_entry_pc (0x0000000000294721) DW_AT_GNU_entry_view (0x0001) DW_AT_ranges (0x00001858 [0x0000000000294721, 0x0000000000294721) [0x00000000002947ac, 0x00000000002947b8)) DW_AT_call_file ("/usr/include/c++/12.2.0/bits/basic_string.h") DW_AT_call_line (268) DW_AT_call_column (0x1d) DW_AT_sibling (0x00031d17) get_frame_block calls get_frame_address_in_block_if_available, which returns 0x2947ab (actually, the relocated version of it, but I'm using the unrelocated version here so it matches the debug info above). This is because get_frame_address_in_block_if_available returns "pc - 1". This address falls outside the block the frame is in, if you look at the last DW_TAG_inlined_subroutine's ranges. Another unrelated block is returned by block_for_pc. The value returned by frame_inlined_callees (which counts the number of inlined frame using the frame_infos) doesn't match the expected number of "inlined subroutine block" we see by going up the block tree, we eventually reach the global block and try to get its superblock. So I think that the root of the problem is get_frame_address_in_block not returning the right thing. In addition to checking that `gdb_assert (bl != NULL);`, I think that get_frame_block should check that the block obtained from `bl->superblock ()` isn't the global block nor the static block. I think we always expect to reach a block that comes from a DW_TAG_subprogram or more precise. -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
* [Bug backtrace/29395] blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed. 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com ` (11 preceding siblings ...) 2022-12-20 23:03 ` simark at simark dot ca @ 2022-12-21 4:49 ` simark at simark dot ca 12 siblings, 0 replies; 14+ messages in thread From: simark at simark dot ca @ 2022-12-21 4:49 UTC (permalink / raw) To: gdb-prs https://sourceware.org/bugzilla/show_bug.cgi?id=29395 --- Comment #10 from Simon Marchi <simark at simark dot ca> --- (In reply to Simon Marchi from comment #9) > I dissected the debug info a bit while looking at what GDB is doing. The > execution is stopped in this hierarchy, in /usr/bin/kicad: > > 0x0000057d: DW_TAG_compile_unit > DW_AT_producer ("GNU C++14 12.2.0 -march=x86-64 > -mtune=generic -g -g -O2 -O2 -std=c++14 -fno-plt -fexceptions > -fstack-clash-protection -fcf-protection=full -fPIE -fvisibility=hidden > -fvisibility-inlines-hidden") > DW_AT_language (DW_LANG_C_plus_plus_14) > DW_AT_name > ("/usr/src/debug/kicad/kicad/kicad/dialogs/dialog_template_selector_base. > cpp") > DW_AT_comp_dir ("/usr/src/debug/kicad/build/kicad") > DW_AT_ranges (0x0000187d > ... snip ... > DW_AT_low_pc (0x0000000000000000) > DW_AT_stmt_list (0x00000178) > > > 0x00031917: DW_TAG_subprogram > DW_AT_specification (0x00009a0c > "_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_assignERKS4_") > DW_AT_decl_file > ("/usr/include/c++/12.2.0/bits/basic_string.tcc") > DW_AT_decl_line (273) > DW_AT_decl_column (0x05) > DW_AT_object_pointer (0x0003193b) > DW_AT_low_pc (0x00000000002946d0) > DW_AT_high_pc (0x00000000002947c8) > DW_AT_frame_base (DW_OP_call_frame_cfa) > DW_AT_call_all_calls (true) > DW_AT_sibling (0x00031ecf) > > 0x00031961: DW_TAG_lexical_block > DW_AT_ranges (0x000017a0 > [0x00000000002946f5, 0x0000000000294729) > [0x0000000000294750, 0x00000000002947c2)) > DW_AT_sibling (0x00031ec1) > > 0x00031c77: DW_TAG_inlined_subroutine > DW_AT_abstract_origin (0x000327c8 > "_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE13_M_set_lengthEm") > DW_AT_entry_pc (0x000000000029471d) > DW_AT_GNU_entry_view (0x0000) > DW_AT_ranges (0x00001846 > [0x000000000029471d, 0x0000000000294729) > [0x00000000002947ac, 0x00000000002947b8)) > DW_AT_call_file > ("/usr/include/c++/12.2.0/bits/basic_string.tcc") > DW_AT_call_line (293) > DW_AT_call_column (0x11) > DW_AT_sibling (0x00031d4e) > > 0x00031cee: DW_TAG_inlined_subroutine > DW_AT_abstract_origin (0x0003290b > "_ZNKSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE7_M_dataEv") > DW_AT_entry_pc (0x0000000000294721) > DW_AT_GNU_entry_view (0x0001) > DW_AT_ranges (0x00001858 > [0x0000000000294721, 0x0000000000294721) > [0x00000000002947ac, 0x00000000002947b8)) > DW_AT_call_file > ("/usr/include/c++/12.2.0/bits/basic_string.h") > DW_AT_call_line (268) > DW_AT_call_column (0x1d) > DW_AT_sibling (0x00031d17) > > > get_frame_block calls get_frame_address_in_block_if_available, which returns > 0x2947ab (actually, the relocated version of it, but I'm using the > unrelocated version here so it matches the debug info above). This is > because get_frame_address_in_block_if_available returns "pc - 1". This > address falls outside the block the frame is in, if you look at the last > DW_TAG_inlined_subroutine's ranges. Another unrelated block is returned by > block_for_pc. The value returned by frame_inlined_callees (which counts the > number of inlined frame using the frame_infos) doesn't match the expected > number of "inlined subroutine block" we see by going up the block tree, we > eventually reach the global block and try to get its superblock. > > So I think that the root of the problem is get_frame_address_in_block not > returning the right thing. > > In addition to checking that `gdb_assert (bl != NULL);`, I think that > get_frame_block should check that the block obtained from `bl->superblock > ()` isn't the global block nor the static block. I think we always expect > to reach a block that comes from a DW_TAG_subprogram or more precise. Scratch all this, get_frame_address_in_block is working as expected, as explained by the comment in it. We are inspecting a non-current frame, so 0x2947ac is the address execution will return to. The -1 is to get to an address belonging to the call instruction just before: 2947a6: ff 15 f4 cc 77 00 call *0x77ccf4(%rip) # a114a0 <wmemcpy@GLIBC_2.2.5> 2947ac: 4c 8b 23 mov (%rbx),%r12 0x2947ab gets us here: 0x00047016: DW_TAG_compile_unit DW_AT_producer ("GNU C++14 12.2.0 -march=x86-64 -mtune=generic -g -g -O2 -O2 -std=c++14 -fno-plt -fexceptions -fstack-clash-protection -fcf-protection=full -fPIE -fvisibility=hi dden -fvisibility-inlines-hidden") DW_AT_language (DW_LANG_C_plus_plus_14) DW_AT_name ("/usr/src/debug/kicad/kicad/kicad/dialogs/dialog_template_selector.cpp") DW_AT_comp_dir ("/usr/src/debug/kicad/build/kicad") DW_AT_ranges (0x00003a4b ...snip... DW_AT_low_pc (0x0000000000000000) DW_AT_stmt_list (0x0000575b) 0x0007aa2b: DW_TAG_subprogram DW_AT_specification (0x00050552 "_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_assignERKS4_") DW_AT_decl_file ("/usr/include/c++/12.2.0/bits/basic_string.tcc") DW_AT_decl_line (273) DW_AT_decl_column (0x05) DW_AT_object_pointer (0x0007aa4f) DW_AT_low_pc (0x00000000002946d0) DW_AT_high_pc (0x00000000002947c8) DW_AT_frame_base (DW_OP_call_frame_cfa) DW_AT_call_all_calls (true) DW_AT_sibling (0x0007afe0) 0x0007aa75: DW_TAG_lexical_block DW_AT_ranges (0x00002a86 [0x00000000002946f5, 0x0000000000294729) [0x0000000000294750, 0x00000000002947c2)) DW_AT_sibling (0x0007afd2) 0x0007ae94: DW_TAG_inlined_subroutine DW_AT_abstract_origin (0x0007bd6c "_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE7_S_copyEPwPKwm") DW_AT_entry_pc (0x0000000000294788) DW_AT_GNU_entry_view (0x0001) DW_AT_low_pc (0x0000000000294788) DW_AT_high_pc (0x00000000002947ac) DW_AT_call_file ("/usr/include/c++/12.2.0/bits/basic_string.tcc") DW_AT_call_line (291) DW_AT_call_column (0x13) 0x0007af20: DW_TAG_inlined_subroutine DW_AT_abstract_origin (0x00096bf5 "_ZNSt11char_traitsIwE4copyEPwPKwm") DW_AT_entry_pc (0x00000000002947a0) DW_AT_GNU_entry_view (0x0001) DW_AT_low_pc (0x00000000002947a0) DW_AT_high_pc (0x00000000002947ac) DW_AT_call_file ("/usr/include/c++/12.2.0/bits/basic_string.h") DW_AT_call_line (423) DW_AT_call_column (0x15) 0x0007af6a: DW_TAG_inlined_subroutine DW_AT_abstract_origin (0x00057a96 "wmemcpy") DW_AT_entry_pc (0x00000000002947a0) DW_AT_GNU_entry_view (0x0004) DW_AT_low_pc (0x00000000002947a0) DW_AT_high_pc (0x00000000002947ac) DW_AT_call_file ("/usr/include/c++/12.2.0/bits/char_traits.h") DW_AT_call_line (558) DW_AT_call_column (0x10) Which makes sense, that gives us three inline frames, which is what frame_inlined_callees returns. However, block_for_pc returns a seemingly unrelated block, in a different CU: 0x04037ab0: DW_TAG_compile_unit DW_AT_producer ("GNU C++14 12.2.0 -march=x86-64 -mtune=generic -g -g -O2 -O2 -std=c++14 -fno-plt -fexceptions -fstack-clash-protection -fcf-protection=full -fPIC -fvisibility=hi dden -fvisibility-inlines-hidden") DW_AT_language (DW_LANG_C_plus_plus_14) DW_AT_name ("/usr/src/debug/kicad/kicad/scripting/python_scripting.cpp") DW_AT_comp_dir ("/usr/src/debug/kicad/build/scripting") DW_AT_ranges (0x002e47d7 ...snip... DW_AT_low_pc (0x0000000000000000) DW_AT_stmt_list (0x0070635a) 0x040c6ebb: DW_TAG_subprogram DW_AT_specification (0x0403c948 "_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE9_M_assignERKS4_") DW_AT_decl_file ("/usr/include/c++/12.2.0/bits/basic_string.tcc") DW_AT_decl_line (273) DW_AT_decl_column (0x05) DW_AT_object_pointer (0x040c6edf) DW_AT_low_pc (0x00000000002946d0) DW_AT_high_pc (0x00000000002947c8) DW_AT_frame_base (DW_OP_call_frame_cfa) DW_AT_call_all_calls (true) DW_AT_sibling (0x040c73d8) 0x040c6f05: DW_TAG_lexical_block DW_AT_ranges (0x002d725f [0x00000000002946f5, 0x0000000000294729) [0x0000000000294750, 0x00000000002947c2)) DW_AT_sibling (0x040c73ca) 0x040c7216: DW_TAG_inlined_subroutine DW_AT_abstract_origin (0x040d4dcd "_ZNSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE13_M_set_lengthEm") DW_AT_entry_pc (0x000000000029471d) DW_AT_GNU_entry_view (0x0000) DW_AT_ranges (0x002d7305 [0x000000000029471d, 0x0000000000294729) [0x00000000002947ab, 0x00000000002947b8)) DW_AT_call_file ("/usr/include/c++/12.2.0/bits/basic_string.tcc") DW_AT_call_line (293) DW_AT_call_column (0x11) DW_AT_sibling (0x040c72ed) 0x040c728d: DW_TAG_inlined_subroutine DW_AT_abstract_origin (0x040d4f10 "_ZNKSt7__cxx1112basic_stringIwSt11char_traitsIwESaIwEE7_M_dataEv") DW_AT_entry_pc (0x0000000000294721) DW_AT_GNU_entry_view (0x0001) DW_AT_ranges (0x002d7317 [0x0000000000294721, 0x0000000000294721) [0x00000000002947ab, 0x00000000002947b8)) DW_AT_call_file ("/usr/include/c++/12.2.0/bits/basic_string.h") DW_AT_call_line (268) DW_AT_call_column (0x1d) DW_AT_sibling (0x040c72b6) In fact, there are many DW_TAG_inlined_subroutine DIEs that have that [0x00000000002947ab, 0x00000000002947b8) range. It appears wrong, as you can see in the disassembly above, there's no instruction starting at 0x2947ab, so I'm not sure why a block range would start there. Plus the fact that it's overlapping with that other DW_TAG_inlined_subroutine. -- You are receiving this mail because: You are on the CC list for the bug. ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2022-12-21 4:49 UTC | newest] Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2022-07-22 13:02 [Bug backtrace/29395] New: blockframe.c:79: internal-error: get_frame_block: Assertion `bl != NULL' failed georgepee at gmail dot com 2022-07-25 15:27 ` [Bug backtrace/29395] " georgepee at gmail dot com 2022-08-24 13:20 ` georgepee at gmail dot com 2022-12-15 18:08 ` seth.pellegrino at gmail dot com 2022-12-15 18:11 ` simon.marchi at polymtl dot ca 2022-12-15 18:43 ` seth.pellegrino at gmail dot com 2022-12-15 19:14 ` simon.marchi at polymtl dot ca 2022-12-15 20:09 ` simon.marchi at polymtl dot ca 2022-12-15 20:27 ` simon.marchi at polymtl dot ca 2022-12-15 21:02 ` seth.pellegrino at gmail dot com 2022-12-15 21:12 ` simon.marchi at polymtl dot ca 2022-12-16 16:27 ` tromey at sourceware dot org 2022-12-20 23:03 ` simark at simark dot ca 2022-12-21 4:49 ` simark at simark dot ca
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).