Don't explicitly set clone child ptrace options
authorPedro Alves <pedro@palves.net>
Fri, 14 Oct 2022 19:17:36 +0000 (20:17 +0100)
committerPedro Alves <pedro@palves.net>
Mon, 7 Nov 2022 15:21:34 +0000 (15:21 +0000)
linux_handle_extended_wait calls target_post_attach if we're handling
a PTRACE_EVENT_CLONE, and libthread_db.so isn't active.
target_post_attach just calls linux_init_ptrace_procfs to set the
lwp's ptrace options.  However, this is completely unnecessary,
because, as man ptrace [1] says, options are inherited:

  "Flags are inherited by new tracees created and "auto-attached" via
   active PTRACE_O_TRACEFORK, PTRACE_O_TRACEVFORK, or PTRACE_O_TRACECLONE
   options."

This removes the unnecessary call.

[1] - https://man7.org/linux/man-pages/man2/ptrace.2.html

Approved-By: Simon Marchi <simon.marchi@efficios.com>
Change-Id: I533eaa60b700f7e40760311fc0d344d0b3f19a78

gdb/linux-nat.c

index f4f7aa81845217b204e511478f1036548f3e0b9a..0b3c143382ba0e911bd30e9b70267655bd793dbf 100644 (file)
@@ -1912,7 +1912,6 @@ linux_handle_extended_wait (struct lwp_info *lp, int status)
            {
              /* The process is not using thread_db.  Add the LWP to
                 GDB's list.  */
-             target_post_attach (new_lp->ptid.lwp ());
              add_thread (linux_target, new_lp->ptid);
            }