This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [PATCH 3/N] remote follow fork and spurious child stops in non-stop mode
- From: Pedro Alves <palves at redhat dot com>
- To: Don Breazeal <donb at codesourcery dot com>, "Breazeal, Don" <Don_Breazeal at mentor dot com>, Simon Marchi <simon dot marchi at ericsson dot com>
- Cc: GDB Patches <gdb-patches at sourceware dot org>
- Date: Wed, 29 Jul 2015 16:40:44 +0100
- Subject: Re: [PATCH 3/N] remote follow fork and spurious child stops in non-stop mode
- Authentication-results: sourceware.org; auth=none
- References: <1437672294-29351-1-git-send-email-palves at redhat dot com> <55B1308E dot 4020700 at redhat dot com> <55B2875E dot 1070504 at codesourcery dot com> <55B8D34F dot 5060002 at redhat dot com> <55B8D765 dot 9010003 at redhat dot com> <55B8E1C4 dot 9080605 at redhat dot com>
On 07/29/2015 03:23 PM, Pedro Alves wrote:
> On 07/29/2015 02:38 PM, Pedro Alves wrote:
>
>> Ignore the "SIGTRAP" mention in "SEL: Found 2 SIGTRAP events",
>> it's "two events". And the one that was picked was a process
>> exit. But the tail end of linux_wait_1 isn't expecting that
>> can happen.
>>
>
> This seems to fix it (and ends up making the code a little
> more like linux-nat.c). I'm running it through the testsuite.
It passes cleanly.
And I confirmed that that test idea triggers the suspend count
assertion I suspected:
Child exited with status 0
/home/pedro/gdb/mygit/build/../src/gdb/gdbserver/linux-low.c:2619: A problem internal to GDBserver has been detected.
unsuspend_one_lwp: Assertion `lwp->suspended >= 0' failed.
[Inferior 1 (process 32473) exited with code 01]
(gdb)
I'll convert that to a proper test.
Thanks,
Pedro Alves