This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: GDB and thread
- From: Ken Brown <kbrown at cornell dot edu>
- To: "cygwin at cygwin dot com" <cygwin at cygwin dot com>
- Date: Sat, 28 Dec 2019 22:03:17 +0000
- Subject: Re: GDB and thread
- Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=cornell.edu; dmarc=pass action=none header.from=cornell.edu; dkim=pass header.d=cornell.edu; arc=none
- Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=Ol3+DPVnwdG2Z9acuZv5wV0jYzgeXnAgE+zDwrrAkXM=; b=jS1ndY9qVYB/psxeCpiQ0x5kIRaRGM3wwR3R9Y178xhs6ULMrrTQ39i+urKGIJWrHNrbswfxEGYh3SyihtuWDQkUVOZtx4iJ1dXdrGDwEJ9fd9jSselMi/HfV3EmKKAxsXMbK5AoYouSSL9RwE3lIfkpsZUfal5KR+63gDKKFaGq8wbok/P0s9UbNyTpWEEgv/yyHVl/In8RqdEHxauinoMmVuUCXBqJcOZrGVscW05PkfO57glImiaYFwWXb/DlGtu3rOeKDnQgdslqaZrVUiktNngCxD93XXR+aAwrs+oiq6iSa2YQ+fJV+f7NgXoR6rgHTv2tAhlL8+IsN39wlg==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=nFKmpkyULJf3+wmjkujhYXD++cHzhDNxvSeoAtSSmalBY70ORcd4WXB33jmkrTyUOL98IK00Hqw0ia9gdulrH/oEureAlCiEuV81Q87rdZdMihQKIGwe7wonalz1KBhysmz8PqTuo+EyAIshJdh1pGXU+K7RgPpssbhs6wB6NhdBYIZ7H2Mn45dNGbWp4qSBnzSG54ae7PdbKpVguhzMsoCopDojU3DBx9c4lhS+ilpXJnX5/08HFE0dOyVKK99f/psN+maJkEF1YzK2AksUFqOFbcuMBzYiJjYMAxDitfDSByDbCBN5C6CuzKrYueK7sr0do++VFY46I2K853ahMA==
- References: <b0d8c3b7-6ebd-3fce-f1b6-4542fb5a37c7@gmail.com>
On 12/28/2019 4:27 PM, Marco Atzeri wrote:
> Hi,
> I am trying to debug the libuv test failures,
> but it seems I am not able to convince GDB on stopping
> just before the failure.
>
> Is "thread apply all" working on Cygwin ?
> The fact that produces no output in comparison to
> a normal break command is a bit strange
>
> (gdb) break test-dlerror.c:34
> Breakpoint 1 at 0x10040b0b0: file /pub/devel/libuv/libuv-1.34.0/test/test-dlerro
> r.c, line 34.
> (gdb) thread apply all break test-dlerror.c:34
Others know this better than I do, but I seem to recall that a break command
automatically applies to all threads. In other words, "thread apply all" is
redundant.
> (gdb) run dlerror
> Starting program: /cygdrive/d/cyg_pub/devel/libuv/libuv-1.34.0-build/test/.libs/
> run-tests.exe dlerror
> [New Thread 139176.0x231a0]
> [New Thread 139176.0x231c8]
> [New Thread 139176.0x21a0c]
> [New Thread 139176.0x2332c]
> [New Thread 139176.0x230b0]
> [New Thread 139176.0x231cc]
> [New Thread 139176.0x23028]
> [New Thread 139176.0x23214]
> [Thread 139176.0x23028 exited with code 0]
> not ok 1 - dlerror
> # exit code 134
> # Output from process `dlerror`:
> # Assertion failed in /pub/devel/libuv/libuv-1.34.0/test/test-dlerror.c on line
> 45: strstr(msg, path) != NULL
> [Thread 139176.0x231c8 exited with code 134]
> [Thread 139176.0x230b0 exited with code 134]
> [Thread 139176.0x2332c exited with code 134]
> [Thread 139176.0x23214 exited with code 134]
> [Thread 139176.0x21a0c exited with code 134]
> [Inferior 1 (process 139176) exited with code 0206]
> (gdb)
>
>
> Any hint will be appreciated
Might this be related to optimization? That could change the order in which
lines of code are executed. Have you tried building without optimization?
Ken
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple