summaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2020-01-10 20:05:46 +0000
committerPedro Alves <palves@redhat.com>2020-01-10 20:05:46 +0000
commitbd420a2dfff64978feb1659d3b77c7601b98463f (patch)
treef5af9eee03a3cee5a1f8808ecc444d7755f18794 /gdb
parentddf5db90a175756b3a5c39ee87d549d9f9d09d28 (diff)
Delete unnecessary code from kill_command
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: 2020-01-10 Pedro Alves <palves@redhat.com> * infcmd.c (kill_command): Remove dead code.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/infcmd.c14
2 files changed, 4 insertions, 14 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index ff1bc14eca..3b5f9aab48 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,9 @@
2020-01-10 Pedro Alves <palves@redhat.com>
+ * infcmd.c (kill_command): Remove dead code.
+
+2020-01-10 Pedro Alves <palves@redhat.com>
+
* remote.c (remote_target::mourn_inferior): No longer check
whether the target is running.
diff --git a/gdb/infcmd.c b/gdb/infcmd.c
index a1f9d4e08c..aea977f492 100644
--- a/gdb/infcmd.c
+++ b/gdb/infcmd.c
@@ -2511,20 +2511,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 ();
}