This is the mail archive of the gdb-prs@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug gdb/18717] gdb misbehaves if non-leader thread exits process


https://sourceware.org/bugzilla/show_bug.cgi?id=18717

--- Comment #2 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Pedro Alves <palves@sourceware.org>:

https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=7759842763d94dc2f1c7d52d09f9203830b753ab

commit 7759842763d94dc2f1c7d52d09f9203830b753ab
Author: Pedro Alves <palves@redhat.com>
Date:   Fri Jul 24 18:18:44 2015 +0000

    PR gdb/18717: internal error if non-leader thread exits process

    If a non-leader thread exits the process while all other threads are
    ptrace-stopped, native gdb fails an assertion.  The test added by this
    commit catches it:

     /home/pedro/gdb/mygit/build/../src/gdb/linux-nat.c:3198: internal-error:
linux_nat_filter_event: Assertion `lp->resumed' failed.
     A problem internal to GDB has been detected,
     further debugging may prove unreliable.
     Quit this debugging session? (y or n)
     FAIL: gdb.threads/non-leader-exit-process.exp: program exits normally (GDB
internal error)

    The fix is just to remove the assertion.

    With that out of the way, neither GDB not GDBserver handle this
    perfectly though, so I'm adding a KFAIL:

     (gdb) continue
     Continuing.
     [Thread 0x7ffff7fc0700 (LWP 15350) exited]
     No unwaited-for children left.
     Couldn't get registers: No such process.
     (gdb) KFAIL: gdb.threads/non-ldr-exit.exp: program exits normally (PRMS:
gdb/18717)

    gdb/ChangeLog:
    2015-07-24  Pedro Alves  <palves@redhat.com>

        PR gdb/18717
        * linux-nat.c (linux_nat_filter_event): Don't assert that the lwp
        is resumed, and extend the debug log.

    gdb/testsuite/ChangeLog:
    2015-07-24  Pedro Alves  <palves@redhat.com>

        PR gdb/18717
        * gdb.threads/non-ldr-exit.c: New file.
        * gdb.threads/non-ldr-exit.exp: New file.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]