[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-07-24 Thread Pavel Labath via lldb-commits
labath wrote: Sorry about the delay. I'm not sure I understand the question, but the way I'm imagining this is to let the server communicate the "is it safe to resume" bit to the client. After that, the client can do whatever it wants/needs (e.g. disable jitting/expression evaluation). I thin

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-28 Thread Jacob Lalonde via lldb-commits
Jlalond wrote: > What do you say to all this? I realize I am sort of asking you my pet > feature, but I think that by framing your feature (debugging of dead > processes) as a special case of this (debugging exiting processes), we can > avoid most of the problematic issues with this PR (diverg

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread Pavel Labath via lldb-commits
https://github.com/labath commented: [I'm sorry, this is going to be long] Most of David's comments are there because you copied the existing attach implementation. Even if we go down the path of different attach methods, I don't think it's necessary to copy all of that. Actual attaching is a

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread Pavel Labath via lldb-commits
https://github.com/labath edited https://github.com/llvm/llvm-project/pull/137041 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread Pavel Labath via lldb-commits
@@ -312,10 +312,27 @@ NativeProcessLinux::Manager::Attach( Log *log = GetLog(POSIXLog::Process); LLDB_LOG(log, "pid = {0:x}", pid); - auto tids_or = NativeProcessLinux::Attach(pid); - if (!tids_or) -return tids_or.takeError(); - ArrayRef<::pid_t> tids = *tids_or; +

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
@@ -312,10 +312,27 @@ NativeProcessLinux::Manager::Attach( Log *log = GetLog(POSIXLog::Process); LLDB_LOG(log, "pid = {0:x}", pid); - auto tids_or = NativeProcessLinux::Attach(pid); - if (!tids_or) -return tids_or.takeError(); - ArrayRef<::pid_t> tids = *tids_or; +

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
@@ -444,6 +461,88 @@ NativeProcessLinux::NativeProcessLinux(::pid_t pid, int terminal_fd, SetState(StateType::eStateStopped, false); } +llvm::Expected> NativeProcessLinux::Seize(::pid_t pid) { + Log *log = GetLog(POSIXLog::Process); + + uint64_t options = GetDefaultPtrace

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
@@ -444,6 +461,88 @@ NativeProcessLinux::NativeProcessLinux(::pid_t pid, int terminal_fd, SetState(StateType::eStateStopped, false); } +llvm::Expected> NativeProcessLinux::Seize(::pid_t pid) { + Log *log = GetLog(POSIXLog::Process); + + uint64_t options = GetDefaultPtrace

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
@@ -444,6 +461,88 @@ NativeProcessLinux::NativeProcessLinux(::pid_t pid, int terminal_fd, SetState(StateType::eStateStopped, false); } +llvm::Expected> NativeProcessLinux::Seize(::pid_t pid) { + Log *log = GetLog(POSIXLog::Process); + + uint64_t options = GetDefaultPtrace

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
@@ -444,6 +461,88 @@ NativeProcessLinux::NativeProcessLinux(::pid_t pid, int terminal_fd, SetState(StateType::eStateStopped, false); } +llvm::Expected> NativeProcessLinux::Seize(::pid_t pid) { + Log *log = GetLog(POSIXLog::Process); + + uint64_t options = GetDefaultPtrace

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
@@ -444,6 +461,88 @@ NativeProcessLinux::NativeProcessLinux(::pid_t pid, int terminal_fd, SetState(StateType::eStateStopped, false); } +llvm::Expected> NativeProcessLinux::Seize(::pid_t pid) { + Log *log = GetLog(POSIXLog::Process); + + uint64_t options = GetDefaultPtrace

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
@@ -444,6 +461,88 @@ NativeProcessLinux::NativeProcessLinux(::pid_t pid, int terminal_fd, SetState(StateType::eStateStopped, false); } +llvm::Expected> NativeProcessLinux::Seize(::pid_t pid) { + Log *log = GetLog(POSIXLog::Process); + + uint64_t options = GetDefaultPtrace

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
@@ -444,6 +461,88 @@ NativeProcessLinux::NativeProcessLinux(::pid_t pid, int terminal_fd, SetState(StateType::eStateStopped, false); } +llvm::Expected> NativeProcessLinux::Seize(::pid_t pid) { + Log *log = GetLog(POSIXLog::Process); + + uint64_t options = GetDefaultPtrace

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett commented: I leave the discussion of race conditions or lack of to @labath . https://github.com/llvm/llvm-project/pull/137041 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mail

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/137041 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
DavidSpickett wrote: > I added my gist to the description, let me know what you think This part looks good, that'll be enough to test this / explain why it exists. https://github.com/llvm/llvm-project/pull/137041 ___ lldb-commits mailing list lldb-com

[Lldb-commits] [lldb] [LLDB] Ptrace seize dead processes on Linux (PR #137041)

2025-05-21 Thread David Spickett via lldb-commits
https://github.com/DavidSpickett edited https://github.com/llvm/llvm-project/pull/137041 ___ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits