Patchwork [v2,07/24] Delete unnecessary code from kill_command

login
register
mail settings
Submitter Pedro Alves
Date Oct. 17, 2019, 10:50 p.m.
Message ID <20191017225026.30496-8-palves@redhat.com>
Download mbox | patch
Permalink /patch/35121/
State New
Headers show

Comments

Pedro Alves - Oct. 17, 2019, 10:50 p.m.
I believe this comment:

      /* Killing off the inferior can leave us with a core file.  If
	 so, print the state we are left in.  */

Referred to the fact that a decade ago, by design, GDB would let you
type "run" when debugging a core dump, keeping the core open.  That
"run" would push a process_stratum target on the target stack for the
live process, and, the core would remain open -- we used to have a
core_stratum.  When the live process was killed/detached or exited,
GDB would go back to debugging the core, since the core_stratum target
was now at the top of the stack.  That design had a number of
problems, see here for example:

  https://sourceware.org/ml/gdb-patches/2008-08/msg00290.html

In 2010, core_stratum was finaly eliminated and cores now have
process_stratum too, with commit c0edd9edadfe ("Make core files the
process_stratum.").  Pushing a live process on the stack while you're
debugging a core discards the core completely.

I also thought that this might be in use with checkpoints, but it does
not -- "kill" when you have multiple checkpoints kills all the
checkpoints.

gdb/ChangeLog:
yyyy-mm-dd  Pedro Alves  <palves@redhat.com>

	* infcmd.c (kill_command): Remove dead code.
---
 gdb/infcmd.c | 14 --------------
 1 file changed, 14 deletions(-)

Patch

diff --git a/gdb/infcmd.c b/gdb/infcmd.c
index 71057748fd..ae1044b95a 100644
--- a/gdb/infcmd.c
+++ b/gdb/infcmd.c
@@ -2501,20 +2501,6 @@  kill_command (const char *arg, int from_tty)
     printf_unfiltered (_("[Inferior %d (%s) killed]\n"),
 		       infnum, pid_str.c_str ());
 
-  /* If we still have other inferiors to debug, then don't mess with
-     with their threads.  */
-  if (!have_inferiors ())
-    {
-      init_thread_list ();		/* Destroy thread info.  */
-
-      /* Killing off the inferior can leave us with a core file.  If
-	 so, print the state we are left in.  */
-      if (target_has_stack)
-	{
-	  printf_filtered (_("In %s,\n"), target_longname);
-	  print_stack_frame (get_selected_frame (NULL), 1, SRC_AND_LOC, 1);
-	}
-    }
   bfd_cache_close_all ();
 }