From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id B31073989083; Thu, 15 Jul 2021 15:28:36 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B31073989083 From: "wcohen at redhat dot com" To: systemtap@sourceware.org Subject: [Bug translator/27984] stap skipping partially-inlined instance, but it is not inline function actually Date: Thu, 15 Jul 2021 15:28:36 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: changed 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: Message-ID: In-Reply-To: References: 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 X-BeenThere: systemtap@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Systemtap mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Jul 2021 15:28:36 -0000 https://sourceware.org/bugzilla/show_bug.cgi?id=3D27984 --- Comment #6 from William Cohen --- The dwf_module_addrinfo lookup is not working. Any partially-inlined functi= ons in the code might cause random exclusions of valid functions as observed. A= dded the following diagnostic print to see what dwfl_module_addrinfo() was returning for each of the tests to verify it matched up with the expected function name: diff --git a/tapsets.cxx b/tapsets.cxx index 20e0cb68f..9d4fd7389 100644 --- a/tapsets.cxx +++ b/tapsets.cxx @@ -2283,6 +2283,9 @@ query_dwarf_func (Dwarf_Die * func, dwarf_query * q) const char *name =3D dwfl_module_addrinfo (q->dw.module, ent= rypc, &off, &sym, NULL, N= ULL, NULL); + if (q->sess.verbose>2) + clog << _F("%s =3D dwfl_module_addrinfo(%p)\n", + name, (void*)entrypc); if (name !=3D NULL && strstr(name, ".part.") !=3D NULL) { if (q->sess.verbose>2) Then ran to see what were the results for the program having the issues: ~/research/profiling/systemtap_write/install/stap --sysroot=3D/tmp/stap-job1/sysroot -vvv -L=20 'process("/usr/local/openresty/openssl/lib/libssl.so.1.1").function("*").ca= ll' >& detailed_funct_entry.log=20 Lots of places didn't find an entry at all: selected function BIO_new_ssl (null) =3D dwfl_module_addrinfo(0x1f760) selected function BIO_new_ssl_connect (null) =3D dwfl_module_addrinfo(0x1f7e0) selected function ssl_puts (null) =3D dwfl_module_addrinfo(0x1ed10) selected function ssl_new (null) =3D dwfl_module_addrinfo(0x1ed40) Other places different name return than expected: selected function ssl3_handshake_write _init =3D dwfl_module_addrinfo(0x2d000) selected function ssl3_ctrl ssl_new =3D dwfl_module_addrinfo(0x2ed90) selected function ssl3_send_alert dtls1_start_timer =3D dwfl_module_addrinfo(0x2fe00) selected function ssl3_do_change_cipher_spec dtls1_clear =3D dwfl_module_addrinfo(0x2fd50) selected function ssl3_dispatch_alert dtls1_get_timeout =3D dwfl_module_addrinfo(0x2ff00) --=20 You are receiving this mail because: You are the assignee for the bug.=