From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id DFC19385DC0A; Fri, 15 May 2020 18:32:06 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org DFC19385DC0A From: "wcohen at redhat dot com" To: systemtap@sourceware.org Subject: [Bug translator/25193] Incorrect reporting of line information for stap -v -L 'process("/usr/bin/ld.gold").statement("*@*:*")' Date: Fri, 15 May 2020 18:32:06 +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: Fri, 15 May 2020 18:32:07 -0000 https://sourceware.org/bugzilla/show_bug.cgi?id=3D25193 --- Comment #3 from William Cohen --- Here is what happening: 1) dwflpp.cxx template iterate_over_srcfile_lines focuses on individual src= file it uses collect_all_lines (dwflpp.cxx:1914) to generate a vector of the addresses (variable matching_lines). The elements of matching_lines includes information about the file, line, column 2) However, the loop dwflpp.cxx:1972 doesn't pass that file information. 3) Instead tapsets.cxx query_srcfile_line tries to infer/regenerate it from= the address by seeing if the address are contained in any of the elements of bf= is. 4) query_srcfile_line mis-matches as the criteria ends up being whether the= =20 address is contained within the items returned by q->filtered_all() rather = than the function/line/source file match up. 5) The lineno passed into query_srcfile_line() is paired with unrelated functions and file names as observed in the example causing the reproducer = to list lines that do not exist in reality. --=20 You are receiving this mail because: You are the assignee for the bug.=