[Lldb-commits] [PATCH] D134642: Propagate FORK events back to client

Iryna Shakhova via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Sep 26 06:34:30 PDT 2022


irinasha created this revision.
Herald added a subscriber: emaste.
Herald added a project: All.
irinasha requested review of this revision.
Herald added a project: LLDB.
Herald added a subscriber: lldb-commits.

We want to allow the client to detect when the process forks and to attach the debugger to a newly created process. For this we propose to implement two options in LLDB*: to propagate fork/vfork events to the client and to automatically detach the child/parent in a _stopped_ state:

- stop-on-clone-events (**false**/true);
- detach-keeps-stopped (**false**/true).

The client (IDE in our case) can then decide to attach another debugger to that process.

- By default these options will be disabled, so the default behavior won't change.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D134642

Files:
  lldb/include/lldb/Host/common/NativeProcessProtocol.h
  lldb/include/lldb/Target/Process.h
  lldb/include/lldb/Utility/StringExtractorGDBRemote.h
  lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
  lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.h
  lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
  lldb/source/Plugins/Process/Linux/NativeProcessLinux.h
  lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp
  lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h
  lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.cpp
  lldb/source/Plugins/Process/Windows/Common/NativeProcessWindows.h
  lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.cpp
  lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerLLGS.h
  lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
  lldb/source/Target/Process.cpp
  lldb/source/Target/StopInfo.cpp
  lldb/source/Target/TargetProperties.td
  lldb/source/Utility/StringExtractorGDBRemote.cpp
  lldb/test/API/linux/clone-events-notification/Makefile
  lldb/test/API/linux/clone-events-notification/TestCloneEventSentAndChildStopped.py
  lldb/test/API/linux/clone-events-notification/main.cpp
  lldb/test/Shell/Subprocess/clone-stops-on-fork
  lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp
  lldb/unittests/TestingSupport/Host/NativeProcessTestUtils.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D134642.462890.patch
Type: text/x-patch
Size: 22734 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20220926/03331a97/attachment-0001.bin>


More information about the lldb-commits mailing list