From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id E295F3865488; Mon, 5 Apr 2021 17:41:12 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E295F3865488 From: "eliz at gnu dot org" To: gdb-prs@sourceware.org Subject: [Bug gdb/17659] [win32] GDB failed to get dll names when handling LOAD_DLL_DEBUG_EVENT event Date: Mon, 05 Apr 2021 17:41:12 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gdb X-Bugzilla-Component: gdb X-Bugzilla-Version: HEAD X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: eliz at gnu dot org X-Bugzilla-Status: REOPENED X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at sourceware dot org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_status cc resolution 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: gdb-prs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-prs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 05 Apr 2021 17:41:13 -0000 https://sourceware.org/bugzilla/show_bug.cgi?id=3D17659 Eli Zaretskii changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED CC| |eliz at gnu dot org Resolution|FIXED |--- --- Comment #5 from Eli Zaretskii --- I'm reopening this. The problem is not completely solved, because the chan= ges pointed to in Comment 3 only handle the DLLs loaded at program start. They don't handle the same problem with DLLs that are dynamically loaded by the debuggee at run time. This is exactly what happens in Emacs with native-compilation of Lisp packa= ges. Each Lisp package is compiled into one or more *.eln files, each of which = is a DLL in disguise. Emacs loads each of these *.eln files when it needs it the first time. Some of those DLLs appear to GDB with NULL or empty name as fo= und by following the lpImageName member of the DLL debug event, and then GDB doesn't know about these DLLs, and cannot produce valid backtraces and other debug support for those DLLs. To fix that we need either the code shown by asmwarrior, or another call to windows_add_all_dlls, either automatically upon receiving a DLL load debug event for which we are unable to glean the DLL name, or at least manually whenever a loaded DLL doesn't appear in "info shared". See also my report of the results of this problem in https://sourceware.org/pipermail/gdb-patches/2021-March/176909.html --=20 You are receiving this mail because: You are on the CC list for the bug.=