-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Closed
Labels
Description
Currently Delve does not use PTRACE_O_TRACEFORK or any other mechanism to begin debugging a process created when the target process (the original process being debugged) forks. This is an issue for tracking and discussing this new potential feature.
This would require changes to the API and to the debugger layer to allow for controlling and manipulating multiple processes simultaneously. It also requires some thought on how such a situation should behave from a users perspective.
Open questions / items to consider:
- Amount of work needed to make the
debuggerlayer be able to handle multiple processes. We abstract a lot away via theTargettype so the debugger would essentially need to initialize and keep track of N different childTargets. - What new functionality will be needed from an API perspective? We would obviously need a way to switch between which is the "current" process which would affect any command used to manipulate or explore a process being debugged.
- How do we coordinate the two processes? Stop both when one hits a breakpoint or only the process which hit it? What happens when both programs hit a breakpoint, which do we show / prioritize for the user?
There's certainly a lot more to consider here but this is at least a brief list to get the topic started.
mdempsky, findleyr, stapelberg, bjorndm, katiehockman and 13 moremdempskymdempsky and matejrisekmdempsky, alexcarol and andy-wm-arthur