From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 83A153858D38; Thu, 2 Nov 2023 20:40:56 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 83A153858D38 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1698957656; bh=ddjCMJiO9kNZh25M205Y6PCqOWjOXDO0XGpVmC+Nb8w=; h=From:To:Subject:Date:From; b=i+i8QEcDKjorlKOxNDMBuNKpLx1CTEJNsyI2tOPcIX7YTGGqrXs6VbRP3MVpRpI7A bkN7ykhnXa5MBUctuFMR2ewREwkbOB7/NzT58nkIygjUqYsVQSX2X+Gr9fUfIDTIXN 9tgOFVayThY1bqThh5nYrHwOCGcDWPEIWZRR49pI= From: "wcohen at redhat dot com" To: systemtap@sourceware.org Subject: [Bug translator/31028] New: Systemtap doesn't find probe points for process.function("*").callee("*")' in code with DWARF5 debuginfo Date: Thu, 02 Nov 2023 20:40:56 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: systemtap X-Bugzilla-Component: translator X-Bugzilla-Version: unspecified X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: wcohen at redhat dot com X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: systemtap at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter target_milestone Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://sourceware.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://sourceware.org/bugzilla/show_bug.cgi?id=3D31028 Bug ID: 31028 Summary: Systemtap doesn't find probe points for process.function("*").callee("*")' in code with DWARF5 debuginfo Product: systemtap Version: unspecified Status: NEW Severity: normal Priority: P2 Component: translator Assignee: systemtap at sourceware dot org Reporter: wcohen at redhat dot com Target Milestone: --- When reviewing the systemtap "make install" test results there were and excessive number of failures for the systemtap.base/listing_mode.exp on RHE= L9, Fedora 38, and rawhide, about 200 failure on x86_64 machines. this can be reproduced with: sudo make installcheck RUNTESTFLAGS=3D"-debug systemtap.base/listing_mode.e= xp" The issues are with the .callee() There are fewer failures on RHEL8 machine. When comparing the code being instrumented I found that RHEL 8 is using DWARF4 and the tests with the high failure rate are using DWARF5. Can narrow the reproducer down to following: gcc /usr/share/systemtap/testsuite/systemtap.base/listing_mode.c=20=20 -isystem/usr/share/systemtap/testsuite -isystem/usr/include -g -O -fPIC -sh= ared -DLISTING_MODE_LIB -lm -o liblisting_mode.so gcc /usr/share/systemtap/testsuite/systemtap.base/listing_mode.c=20=20 -isystem/usr/share/systemtap/testsuite -isystem/usr/include -g -O -llisting_mode -Wl,-rpath,/usr/share/systemtap/testsuite -L. -DLISTING_MODE_MAIN -lm -o listing_mode=20=20 stap -l 'process.function("foo").callee("bar")' -c listing_mode On RHEL8 get the expected output: process("/home/wcohen/systemtap_write/systemtap/listing_mode").function("fo= o@/usr/share/systemtap/testsuite/systemtap.base/listing_mode.c:23").callee(= "bar@/usr/share/systemtap/testsuite/systemtap.base/listing_mode.c:16") On RHEL9/fedora38/rawhide get nothing. Comparing the llvm-dwarfdump output for listing_mode on RHEL8 see: 0x000003f6: DW_TAG_GNU_call_site DW_AT_low_pc (0x0000000000400711) DW_AT_abstract_origin (0x0000040c "bar") 0x00000403: DW_TAG_GNU_call_site_parameter DW_AT_location (DW_OP_reg5 RDI) DW_AT_GNU_call_site_value=20=20 (DW_OP_GNU_entry_value(DW_OP_reg5 RDI)) On Fedora 38 the dwarf 5 call site information is a little different: 0x00000188: DW_TAG_call_site DW_AT_call_return_pc (0x0000000000401182) DW_AT_call_origin (0x0000019e) 0x00000195: DW_TAG_call_site_parameter DW_AT_location (DW_OP_reg5 RDI) DW_AT_call_value (DW_OP_entry_value(DW_OP_reg5 RDI)) Appears: DWARF4 -> DWARF5 DW_AT_low_pc -> DW_AT_call_return_pc DW_AT_abstract_origin -> DW_AT_call_origin --=20 You are receiving this mail because: You are the assignee for the bug.=