diff --git a/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h b/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h --- a/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h +++ b/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.h @@ -47,6 +47,8 @@ Status Signal(int signo) override; + Status Interrupt() override; + Status Kill() override; Status GetMemoryRegionInfo(lldb::addr_t load_addr, diff --git a/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp b/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp --- a/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp +++ b/lldb/source/Plugins/Process/NetBSD/NativeProcessNetBSD.cpp @@ -381,12 +381,7 @@ } Status NativeProcessNetBSD::Halt() { - Status error; - - if (kill(GetID(), SIGSTOP) != 0) - error.SetErrorToErrno(); - - return error; + return PtraceWrapper(PT_STOP, GetID()); } Status NativeProcessNetBSD::Detach() { @@ -411,6 +406,10 @@ return error; } +Status NativeProcessNetBSD::Interrupt() { + return PtraceWrapper(PT_STOP, GetID()); +} + Status NativeProcessNetBSD::Kill() { Log *log(ProcessPOSIXLog::GetLogIfAllCategoriesSet(POSIX_LOG_PROCESS)); LLDB_LOG(log, "pid {0}", GetID());