[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/29278] New: gdb crashes on interrupt (non-stop mode, targe

From: Manfred.Steiner at gmx dot at
Subject: [Bug binutils/29278] New: gdb crashes on interrupt (non-stop mode, target extended-remote)
Date: Thu, 23 Jun 2022 06:06:43 +0000


            Bug ID: 29278
           Summary: gdb crashes on interrupt (non-stop mode, target
           Product: binutils
           Version: unspecified
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: binutils
          Assignee: unassigned at sourceware dot org
          Reporter: Manfred.Steiner at gmx dot at
  Target Milestone: ---

binutils-gdb Version:

When working with a AVR Stub in non-stop mode via target extended-remote, it is
possible to start without program running (stub returns an empty thread list on
qfThreadInfo request), or to detach from program. 

If you execute interrupt in this situation on gdb command line, gdb crashes
with backtrace output.

inferior.c:304: internal-error: find_inferior_pid: Assertion `pid != 0' failed.
A problem internal to GDB has been detected,

Looking inside source code shows the cause:

file gdb/inferior.c:298:

struct inferior *
find_inferior_pid (process_stratum_target *targ, int pid)
  /* Looking for inferior pid == 0 is always wrong, and indicative of
     a bug somewhere else.  There may be more than one with pid == 0,
     for instance.  */
  gdb_assert (pid != 0);

I think the comment is outdated and it would be better to replace the assert
if (pid == 0) {
  return NULL;

because pid == 0 is a possible case in non-stop mode when using target

Then the interrupt command would be ignored (or result in an error message when
the stub returns an error).

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

reply via email to

[Prev in Thread] Current Thread [Next in Thread]