Multi-target support
[deliverable/binutils-gdb.git] / gdb / linux-fork.c
index 229f660eb919320440d68e9648019125f5bb348b..c77fb6c73ac98dbef349e4af30d357bd451f2670 100644 (file)
@@ -1,6 +1,6 @@
 /* GNU/Linux native-dependent code for debugging multiple forks.
 
-   Copyright (C) 2005-2019 Free Software Foundation, Inc.
+   Copyright (C) 2005-2020 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -31,7 +31,7 @@
 #include "source.h"
 
 #include "nat/gdb_ptrace.h"
-#include "common/gdb_wait.h"
+#include "gdbsupport/gdb_wait.h"
 #include <dirent.h>
 #include <ctype.h>
 
@@ -215,7 +215,6 @@ call_lseek (int fd, off_t offset, int whence)
 static void
 fork_load_infrun_state (struct fork_info *fp)
 {
-  extern void nullify_last_target_wait_ptid ();
   int i;
 
   linux_nat_switch_fork (fp->ptid);
@@ -433,7 +432,7 @@ public:
            fork_load_infrun_state (m_oldfp);
            insert_breakpoints ();
          }
-       catch (const gdb_exception_RETURN_MASK_ALL &ex)
+       catch (const gdb_exception &ex)
          {
            warning (_("Couldn't restore checkpoint state in %s: %s"),
                     target_pid_to_str (m_oldfp->ptid).c_str (),
@@ -520,7 +519,7 @@ Please switch to another checkpoint before deleting the current one"));
      list, waitpid the ptid.
      If fi->parent_ptid is a part of lwp and it is stopped, waitpid the
      ptid.  */
-  thread_info *parent = find_thread_ptid (pptid);
+  thread_info *parent = find_thread_ptid (linux_target, pptid);
   if ((parent == NULL && find_fork_ptid (pptid))
       || (parent != NULL && parent->state == THREAD_STOPPED))
     {
@@ -597,7 +596,7 @@ info_checkpoints_command (const char *arg, int from_tty)
 
          msym = lookup_minimal_symbol_by_pc (pc);
          if (msym.minsym)
-           printf_filtered (", <%s>", MSYMBOL_LINKAGE_NAME (msym.minsym));
+           printf_filtered (", <%s>", msym.minsym->linkage_name ());
        }
 
       putchar_filtered ('\n');
@@ -680,7 +679,7 @@ checkpoint_command (const char *args, int from_tty)
     error (_("checkpoint: call_function_by_hand returned null."));
 
   retpid = value_as_long (ret);
-  get_last_target_status (&last_target_ptid, &last_target_waitstatus);
+  get_last_target_status (nullptr, &last_target_ptid, &last_target_waitstatus);
 
   fp = find_fork_pid (retpid);
 
@@ -765,7 +764,8 @@ Fork a duplicate process (experimental)."));
      process.  */
 
   add_com ("restart", class_obscure, restart_command, _("\
-restart N: restore program context from a checkpoint.\n\
+Restore program context from a checkpoint.\n\
+Usage: restart N\n\
 Argument N is checkpoint ID, as displayed by 'info checkpoints'."));
 
   /* Delete checkpoint command: kill the process and remove it from
This page took 0.02984 seconds and 4 git commands to generate.