LLDB mainline
|
Manages communication with the inferior (debugee) process. More...
#include <NativeProcessNetBSD.h>
Classes | |
class | Manager |
Public Member Functions | |
Status | Resume (const ResumeActionList &resume_actions) override |
Status | Halt () override |
Status | Detach () override |
Status | Signal (int signo) override |
Sends a process a UNIX signal signal. | |
Status | Interrupt () override |
Tells a process to interrupt all operations as if by a Ctrl-C. | |
Status | Kill () override |
Status | GetMemoryRegionInfo (lldb::addr_t load_addr, MemoryRegionInfo &range_info) override |
Status | ReadMemory (lldb::addr_t addr, void *buf, size_t size, size_t &bytes_read) override |
Status | WriteMemory (lldb::addr_t addr, const void *buf, size_t size, size_t &bytes_written) override |
lldb::addr_t | GetSharedLibraryInfoAddress () override |
size_t | UpdateThreads () override |
const ArchSpec & | GetArchitecture () const override |
Status | SetBreakpoint (lldb::addr_t addr, uint32_t size, bool hardware) override |
Status | GetLoadedModuleFileSpec (const char *module_path, FileSpec &file_spec) override |
Status | GetFileLoadAddress (const llvm::StringRef &file_name, lldb::addr_t &load_addr) override |
llvm::ErrorOr< std::unique_ptr< llvm::MemoryBuffer > > | GetAuxvData () const override |
llvm::Expected< std::string > | SaveCore (llvm::StringRef path_hint) override |
Write a core dump (without crashing the program). | |
Public Member Functions inherited from lldb_private::NativeProcessELF | |
std::optional< uint64_t > | GetAuxValue (enum AuxVector::EntryType type) |
Public Member Functions inherited from lldb_private::NativeProcessProtocol | |
virtual | ~NativeProcessProtocol ()=default |
virtual Status | Resume (const ResumeActionList &resume_actions)=0 |
virtual Status | Halt ()=0 |
virtual Status | Detach ()=0 |
virtual Status | Signal (int signo)=0 |
Sends a process a UNIX signal signal. | |
virtual Status | Interrupt () |
Tells a process to interrupt all operations as if by a Ctrl-C. | |
virtual Status | Kill ()=0 |
virtual Status | IgnoreSignals (llvm::ArrayRef< int > signals) |
virtual Status | GetMemoryRegionInfo (lldb::addr_t load_addr, MemoryRegionInfo &range_info) |
virtual Status | ReadMemory (lldb::addr_t addr, void *buf, size_t size, size_t &bytes_read)=0 |
Status | ReadMemoryWithoutTrap (lldb::addr_t addr, void *buf, size_t size, size_t &bytes_read) |
virtual Status | ReadMemoryTags (int32_t type, lldb::addr_t addr, size_t len, std::vector< uint8_t > &tags) |
virtual Status | WriteMemoryTags (int32_t type, lldb::addr_t addr, size_t len, const std::vector< uint8_t > &tags) |
llvm::Expected< llvm::StringRef > | ReadCStringFromMemory (lldb::addr_t addr, char *buffer, size_t max_size, size_t &total_bytes_read) |
Reads a null terminated string from memory. | |
virtual Status | WriteMemory (lldb::addr_t addr, const void *buf, size_t size, size_t &bytes_written)=0 |
virtual llvm::Expected< lldb::addr_t > | AllocateMemory (size_t size, uint32_t permissions) |
virtual llvm::Error | DeallocateMemory (lldb::addr_t addr) |
virtual lldb::addr_t | GetSharedLibraryInfoAddress ()=0 |
virtual llvm::Expected< std::vector< SVR4LibraryInfo > > | GetLoadedSVR4Libraries () |
virtual bool | IsAlive () const |
virtual size_t | UpdateThreads ()=0 |
virtual const ArchSpec & | GetArchitecture () const =0 |
virtual Status | SetBreakpoint (lldb::addr_t addr, uint32_t size, bool hardware)=0 |
virtual Status | RemoveBreakpoint (lldb::addr_t addr, bool hardware=false) |
virtual const HardwareBreakpointMap & | GetHardwareBreakpointMap () const |
virtual Status | SetHardwareBreakpoint (lldb::addr_t addr, size_t size) |
virtual Status | RemoveHardwareBreakpoint (lldb::addr_t addr) |
virtual const NativeWatchpointList::WatchpointMap & | GetWatchpointMap () const |
virtual std::optional< std::pair< uint32_t, uint32_t > > | GetHardwareDebugSupportInfo () const |
virtual Status | SetWatchpoint (lldb::addr_t addr, size_t size, uint32_t watch_flags, bool hardware) |
virtual Status | RemoveWatchpoint (lldb::addr_t addr) |
lldb::pid_t | GetID () const |
lldb::StateType | GetState () const |
bool | IsRunning () const |
bool | IsStepping () const |
bool | CanResume () const |
lldb::ByteOrder | GetByteOrder () const |
uint32_t | GetAddressByteSize () const |
virtual llvm::ErrorOr< std::unique_ptr< llvm::MemoryBuffer > > | GetAuxvData () const =0 |
virtual std::optional< WaitStatus > | GetExitStatus () |
virtual bool | SetExitStatus (WaitStatus status, bool bNotifyStateChange) |
NativeThreadProtocol * | GetThreadAtIndex (uint32_t idx) |
NativeThreadProtocol * | GetThreadByID (lldb::tid_t tid) |
void | SetCurrentThreadID (lldb::tid_t tid) |
lldb::tid_t | GetCurrentThreadID () const |
NativeThreadProtocol * | GetCurrentThread () |
ThreadIterable | Threads () const |
virtual int | GetTerminalFileDescriptor () |
uint32_t | GetStopID () const |
virtual Status | GetLoadedModuleFileSpec (const char *module_path, FileSpec &file_spec)=0 |
virtual Status | GetFileLoadAddress (const llvm::StringRef &file_name, lldb::addr_t &load_addr)=0 |
virtual void | NotifyTracersProcessWillResume () |
Notify tracers that the target process will resume. | |
virtual void | NotifyTracersProcessDidStop () |
Notify tracers that the target process just stopped. | |
virtual llvm::Error | TraceStart (llvm::StringRef json_params, llvm::StringRef type) |
Start tracing a process or its threads. | |
virtual llvm::Error | TraceStop (const TraceStopRequest &request) |
Stop tracing a live process or its threads. | |
virtual llvm::Expected< llvm::json::Value > | TraceGetState (llvm::StringRef type) |
Get the current tracing state of the process and its threads. | |
virtual llvm::Expected< std::vector< uint8_t > > | TraceGetBinaryData (const TraceGetBinaryDataRequest &request) |
Get binary data given a trace technology and a data identifier. | |
virtual llvm::Expected< TraceSupportedResponse > | TraceSupported () |
Get the processor tracing type supported for this process. | |
virtual void | SetEnabledExtensions (Extension flags) |
Method called in order to propagate the bitmap of protocol extensions supported by the client. | |
virtual llvm::Expected< std::string > | SaveCore (llvm::StringRef path_hint) |
Write a core dump (without crashing the program). | |
Static Public Member Functions | |
static Status | PtraceWrapper (int req, lldb::pid_t pid, void *addr=nullptr, int data=0, int *result=nullptr) |
static Status | StopProcess (lldb::pid_t pid) |
Static Public Member Functions inherited from lldb_private::NativeProcessProtocol | |
template<typename I > | |
static NativeThreadProtocol & | thread_list_adapter (I &iter) |
Private Member Functions | |
NativeProcessNetBSD (::pid_t pid, int terminal_fd, NativeDelegate &delegate, const ArchSpec &arch, MainLoop &mainloop) | |
bool | HasThreadNoLock (lldb::tid_t thread_id) |
NativeThreadNetBSD & | AddThread (lldb::tid_t thread_id) |
void | RemoveThread (lldb::tid_t thread_id) |
void | MonitorCallback (lldb::pid_t pid, int signal) |
void | MonitorExited (lldb::pid_t pid, WaitStatus status) |
void | MonitorSIGSTOP (lldb::pid_t pid) |
void | MonitorSIGTRAP (lldb::pid_t pid) |
void | MonitorSignal (lldb::pid_t pid, int signal) |
void | MonitorClone (::pid_t child_pid, bool is_vfork, NativeThreadNetBSD &parent_thread) |
Status | PopulateMemoryRegionCache () |
void | SigchldHandler () |
Status | Attach () |
Status | SetupTrace () |
Status | ReinitializeThreads () |
Private Attributes | |
MainLoop::SignalHandleUP | m_sigchld_handle |
ArchSpec | m_arch |
MainLoop & | m_main_loop |
LazyBool | m_supports_mem_region = eLazyBoolCalculate |
std::vector< std::pair< MemoryRegionInfo, FileSpec > > | m_mem_region_cache |
Additional Inherited Members | |
Public Types inherited from lldb_private::NativeProcessProtocol | |
enum class | Extension { multiprocess = (1u << 0) , fork = (1u << 1) , vfork = (1u << 2) , pass_signals = (1u << 3) , auxv = (1u << 4) , libraries_svr4 = (1u << 5) , memory_tagging = (1u << 6) , savecore = (1u << 7) , siginfo_read = (1u << 8) } |
Extension flag constants, returned by Manager::GetSupportedExtensions() and passed to SetEnabledExtension() More... | |
typedef std::vector< std::unique_ptr< NativeThreadProtocol > > | thread_collection |
typedef LockingAdaptedIterable< thread_collection, NativeThreadProtocol &, thread_list_adapter, std::recursive_mutex > | ThreadIterable |
Protected Member Functions inherited from lldb_private::NativeProcessELF | |
lldb::addr_t | GetSharedLibraryInfoAddress () override |
template<typename ELF_EHDR , typename ELF_PHDR , typename ELF_DYN > | |
lldb::addr_t | GetELFImageInfoAddress () |
llvm::Expected< std::vector< SVR4LibraryInfo > > | GetLoadedSVR4Libraries () override |
template<typename T > | |
llvm::Expected< SVR4LibraryInfo > | ReadSVR4LibraryInfo (lldb::addr_t link_map_addr) |
void | NotifyDidExec () override |
Notify the delegate that an exec occurred. | |
Protected Member Functions inherited from lldb_private::NativeProcessProtocol | |
NativeProcessProtocol (lldb::pid_t pid, int terminal_fd, NativeDelegate &delegate) | |
void | SetID (lldb::pid_t pid) |
void | SetState (lldb::StateType state, bool notify_delegates=true) |
virtual void | DoStopIDBumped (uint32_t newBumpId) |
Status | SetSoftwareBreakpoint (lldb::addr_t addr, uint32_t size_hint) |
Status | RemoveSoftwareBreakpoint (lldb::addr_t addr) |
virtual llvm::Expected< llvm::ArrayRef< uint8_t > > | GetSoftwareBreakpointTrapOpcode (size_t size_hint) |
virtual size_t | GetSoftwareBreakpointPCOffset () |
Return the offset of the PC relative to the software breakpoint that was hit. | |
void | FixupBreakpointPCAsNeeded (NativeThreadProtocol &thread) |
virtual void | NotifyDidExec () |
Notify the delegate that an exec occurred. | |
NativeThreadProtocol * | GetThreadByIDUnlocked (lldb::tid_t tid) |
Protected Attributes inherited from lldb_private::NativeProcessELF | |
std::unique_ptr< AuxVector > | m_aux_vector |
std::optional< lldb::addr_t > | m_shared_library_info_addr |
Protected Attributes inherited from lldb_private::NativeProcessProtocol | |
std::unordered_map< lldb::addr_t, SoftwareBreakpoint > | m_software_breakpoints |
lldb::pid_t | m_pid |
std::vector< std::unique_ptr< NativeThreadProtocol > > | m_threads |
lldb::tid_t | m_current_thread_id = LLDB_INVALID_THREAD_ID |
std::recursive_mutex | m_threads_mutex |
lldb::StateType | m_state = lldb::eStateInvalid |
std::recursive_mutex | m_state_mutex |
std::optional< WaitStatus > | m_exit_status |
NativeDelegate & | m_delegate |
NativeWatchpointList | m_watchpoint_list |
HardwareBreakpointMap | m_hw_breakpoints_map |
int | m_terminal_fd |
uint32_t | m_stop_id = 0 |
llvm::DenseSet< int > | m_signals_to_ignore |
Extension | m_enabled_extensions |
Manages communication with the inferior (debugee) process.
Upon construction, this class prepares and launches an inferior process for debugging.
Changes in the inferior process state are broadcasted.
Definition at line 28 of file NativeProcessNetBSD.h.
|
private |
Definition at line 143 of file NativeProcessNetBSD.cpp.
References EnsureFDFlags(), m_sigchld_handle, lldb_private::NativeProcessProtocol::m_terminal_fd, O_NONBLOCK, lldb_private::MainLoopPosix::RegisterSignal(), SigchldHandler(), and lldb_private::Status::Success().
|
private |
Definition at line 838 of file NativeProcessNetBSD.cpp.
References lldb_private::NativeProcessProtocol::GetID(), lldb_private::GetLog(), HasThreadNoLock(), LLDB_LOG, lldb_private::NativeProcessProtocol::m_threads, lldb_private::NativeProcessProtocol::SetCurrentThreadID(), and lldb_private::Thread.
Referenced by MonitorSIGTRAP(), and ReinitializeThreads().
|
private |
Definition at line 870 of file NativeProcessNetBSD.cpp.
References lldb::eErrorTypePOSIX, lldb_private::Status::Fail(), lldb_private::NativeProcessProtocol::m_pid, lldb_private::NativeProcessProtocol::m_threads, PtraceWrapper(), lldb_private::NativeProcessProtocol::SetCurrentThreadID(), lldb_private::NativeProcessProtocol::SetState(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedBySignal(), SetupTrace(), and SIGSTOP.
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 559 of file NativeProcessNetBSD.cpp.
References error(), lldb_private::NativeProcessProtocol::GetID(), LLDB_INVALID_PROCESS_ID, m_sigchld_handle, and PtraceWrapper().
|
inlineoverridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 70 of file NativeProcessNetBSD.h.
References m_arch.
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 956 of file NativeProcessNetBSD.cpp.
References error(), lldb_private::NativeProcessProtocol::GetID(), and PtraceWrapper().
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 776 of file NativeProcessNetBSD.cpp.
References error(), LLDB_INVALID_ADDRESS, m_mem_region_cache, and PopulateMemoryRegionCache().
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 756 of file NativeProcessNetBSD.cpp.
References lldb_private::ConstString::AsCString(), lldb_private::FileSpec::Clear(), error(), lldb_private::FileSpec::GetFilename(), lldb_private::FileSystem::Instance(), m_mem_region_cache, PopulateMemoryRegionCache(), and lldb_private::FileSystem::Resolve().
|
overridevirtual |
Reimplemented from lldb_private::NativeProcessProtocol.
Definition at line 619 of file NativeProcessNetBSD.cpp.
References lldb_private::Range< B, S >::Contains(), lldb_private::eLazyBoolNo, lldb_private::MemoryRegionInfo::eNo, error(), lldb_private::MemoryRegionInfo::GetRange(), lldb_private::Range< B, S >::GetRangeBase(), LLDB_INVALID_ADDRESS, m_mem_region_cache, m_supports_mem_region, PopulateMemoryRegionCache(), lldb_private::Range< B, S >::SetByteSize(), lldb_private::MemoryRegionInfo::SetExecutable(), lldb_private::MemoryRegionInfo::SetMapped(), lldb_private::Range< B, S >::SetRangeBase(), lldb_private::Range< B, S >::SetRangeEnd(), lldb_private::MemoryRegionInfo::SetReadable(), lldb_private::MemoryRegionInfo::SetWritable(), and UNUSED_IF_ASSERT_DISABLED.
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 741 of file NativeProcessNetBSD.cpp.
References LLDB_INVALID_ADDRESS.
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 557 of file NativeProcessNetBSD.cpp.
References lldb_private::NativeProcessProtocol::GetID(), and StopProcess().
|
private |
Definition at line 825 of file NativeProcessNetBSD.cpp.
References lldb_private::NativeProcessProtocol::m_threads.
Referenced by AddThread(), and RemoveThread().
|
overridevirtual |
Tells a process to interrupt all operations as if by a Ctrl-C.
The default implementation will send a local host's equivalent of a SIGSTOP to the process via the NativeProcessProtocol::Signal() operation.
Reimplemented from lldb_private::NativeProcessProtocol.
Definition at line 581 of file NativeProcessNetBSD.cpp.
References lldb_private::NativeProcessProtocol::GetID(), and StopProcess().
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 583 of file NativeProcessNetBSD.cpp.
References error(), lldb_private::NativeProcessProtocol::GetID(), lldb_private::GetLog(), LLDB_LOG, lldb_private::NativeProcessProtocol::m_state, lldb_private::Process, SIGKILL, and lldb_private::StateAsCString().
|
private |
Definition at line 161 of file NativeProcessNetBSD.cpp.
References MonitorSignal(), MonitorSIGSTOP(), MonitorSIGTRAP(), SIGSTOP, and SIGTRAP.
Referenced by SigchldHandler().
|
private |
Definition at line 1033 of file NativeProcessNetBSD.cpp.
References lldb_private::Status::Fail(), lldb_private::NativeProcessProtocol::fork, lldb_private::NativeProcessProtocol::GetID(), lldb_private::GetLog(), LLDB_LOG, LLDB_LOG_ERROR, m_arch, lldb_private::NativeProcessProtocol::m_delegate, lldb_private::NativeProcessProtocol::m_enabled_extensions, m_main_loop, lldb_private::NativeProcessProtocol::m_software_breakpoints, lldb_private::NativeProcessProtocol::m_terminal_fd, lldb_private::NativeProcessProtocol::NativeDelegate::NewSubprocess(), lldb_private::Process, PtraceWrapper(), lldb_private::NativeProcessProtocol::SetState(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedByFork(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedBySignal(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedByVFork(), SIGSTOP, lldb_private::Status::ToError(), and lldb_private::NativeProcessProtocol::vfork.
Referenced by MonitorSIGTRAP().
|
private |
Definition at line 172 of file NativeProcessNetBSD.cpp.
References lldb_private::GetLog(), LLDB_LOG, lldb_private::NativeProcessProtocol::m_threads, lldb_private::Process, lldb_private::NativeProcessProtocol::SetExitStatus(), and lldb_private::NativeProcessProtocol::SetState().
Referenced by SigchldHandler().
|
private |
Definition at line 359 of file NativeProcessNetBSD.cpp.
References lldb_private::NativeThreadProtocol::GetID(), lldb_private::GetLog(), LLDB_LOG, lldb_private::NativeProcessProtocol::m_threads, lldb_private::Process, PtraceWrapper(), lldb_private::NativeProcessProtocol::SetState(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedBySignal(), and lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedWithNoReason().
Referenced by MonitorCallback(), and MonitorSIGTRAP().
|
private |
Definition at line 186 of file NativeProcessNetBSD.cpp.
References lldb_private::NativeProcessProtocol::m_threads, PtraceWrapper(), lldb_private::NativeProcessProtocol::SetState(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedBySignal(), and SIGSTOP.
Referenced by MonitorCallback().
|
private |
Definition at line 207 of file NativeProcessNetBSD.cpp.
References AddThread(), lldb_private::process_netbsd::NativeThreadNetBSD::CopyWatchpointsFrom(), error(), lldb_private::NativeProcessProtocol::FixupBreakpointPCAsNeeded(), lldb_private::NativeProcessProtocol::GetCurrentThread(), lldb_private::GetLog(), lldb_private::process_netbsd::NativeThreadNetBSD::GetRegisterContext(), LLDB_INVALID_INDEX32, LLDB_LOG, lldb_private::NativeProcessProtocol::m_enabled_extensions, lldb_private::NativeProcessProtocol::m_threads, MonitorClone(), MonitorSignal(), lldb_private::NativeProcessELF::NotifyDidExec(), lldb_private::Process, PtraceWrapper(), ReinitializeThreads(), RemoveThread(), lldb_private::NativeProcessProtocol::SetState(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedByBreakpoint(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedByExec(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedByTrace(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedByVForkDone(), lldb_private::process_netbsd::NativeThreadNetBSD::SetStoppedByWatchpoint(), SIGTRAP, and lldb_private::NativeProcessProtocol::vfork.
Referenced by MonitorCallback().
|
private |
Definition at line 675 of file NativeProcessNetBSD.cpp.
References lldb_private::MemoryRegionInfo::Clear(), lldb_private::eLazyBoolNo, lldb_private::eLazyBoolYes, lldb_private::MemoryRegionInfo::eNo, error(), lldb_private::MemoryRegionInfo::eYes, lldb_private::ConstString::GetCString(), lldb_private::NativeProcessProtocol::GetID(), lldb_private::GetLog(), lldb_private::MemoryRegionInfo::GetName(), lldb_private::MemoryRegionInfo::GetRange(), LLDB_LOG, m_mem_region_cache, m_supports_mem_region, lldb_private::Process, lldb_private::MemoryRegionInfo::SetExecutable(), lldb_private::MemoryRegionInfo::SetMapped(), lldb_private::MemoryRegionInfo::SetName(), lldb_private::Range< B, S >::SetRangeBase(), lldb_private::Range< B, S >::SetRangeEnd(), lldb_private::MemoryRegionInfo::SetReadable(), and lldb_private::MemoryRegionInfo::SetWritable().
Referenced by GetFileLoadAddress(), GetLoadedModuleFileSpec(), and GetMemoryRegionInfo().
|
static |
Definition at line 405 of file NativeProcessNetBSD.cpp.
References error(), lldb_private::GetLog(), LLDB_LOG, and lldb_private::Ptrace.
Referenced by Attach(), Detach(), lldb_private::process_netbsd::NativeRegisterContextNetBSD::DoRegisterSet(), GetAuxvData(), lldb_private::process_netbsd::NativeThreadNetBSD::GetName(), MonitorClone(), MonitorSignal(), MonitorSIGSTOP(), MonitorSIGTRAP(), ReadMemory(), ReinitializeThreads(), lldb_private::process_netbsd::NativeThreadNetBSD::Resume(), Resume(), SaveCore(), SetupTrace(), lldb_private::process_netbsd::NativeThreadNetBSD::SingleStep(), StopProcess(), lldb_private::process_netbsd::NativeThreadNetBSD::Suspend(), and WriteMemory().
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 899 of file NativeProcessNetBSD.cpp.
References error(), lldb_private::NativeProcessProtocol::GetID(), lldb_private::GetLog(), LLDB_LOG, lldb_private::Memory, and PtraceWrapper().
|
private |
Definition at line 1003 of file NativeProcessNetBSD.cpp.
References AddThread(), error(), lldb_private::NativeProcessProtocol::GetID(), lldb_private::NativeProcessProtocol::m_threads, and PtraceWrapper().
Referenced by MonitorSIGTRAP(), and SetupTrace().
|
private |
Definition at line 854 of file NativeProcessNetBSD.cpp.
References lldb_private::NativeProcessProtocol::GetID(), lldb_private::GetLog(), HasThreadNoLock(), LLDB_LOG, lldb_private::NativeProcessProtocol::m_threads, and lldb_private::Thread.
Referenced by MonitorSIGTRAP().
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 482 of file NativeProcessNetBSD.cpp.
References ComputeSignalInfo(), lldb::eStateRunning, lldb::eStateStepping, lldb::eStateStopped, lldb::eStateSuspended, lldb_private::ResumeActionList::GetActionForThread(), lldb_private::NativeProcessProtocol::GetID(), lldb_private::NativeThreadProtocol::GetID(), lldb_private::GetLog(), LLDB_INVALID_SIGNAL_NUMBER, LLDB_LOG, lldb_private::NativeProcessProtocol::m_threads, lldb_private::Process, PtraceWrapper(), lldb_private::process_netbsd::NativeThreadNetBSD::Resume(), lldb_private::NativeProcessProtocol::SetState(), lldb_private::ResumeAction::signal, lldb_private::process_netbsd::NativeThreadNetBSD::SingleStep(), lldb_private::ResumeAction::state, lldb_private::StateAsCString(), lldb_private::Status::Success(), and lldb_private::process_netbsd::NativeThreadNetBSD::Suspend().
|
overridevirtual |
Write a core dump (without crashing the program).
[in] | path_hint | Suggested core dump path (optional, can be empty). |
Reimplemented from lldb_private::NativeProcessProtocol.
Definition at line 1098 of file NativeProcessNetBSD.cpp.
References error(), lldb_private::NativeProcessProtocol::GetID(), and PtraceWrapper().
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 748 of file NativeProcessNetBSD.cpp.
References lldb_private::NativeProcessProtocol::SetSoftwareBreakpoint().
|
private |
Definition at line 986 of file NativeProcessNetBSD.cpp.
References lldb_private::Status::Fail(), lldb_private::NativeProcessProtocol::GetID(), PtraceWrapper(), and ReinitializeThreads().
Referenced by Attach().
|
private |
Definition at line 793 of file NativeProcessNetBSD.cpp.
References lldb_private::WaitStatus::Decode(), lldb::eErrorTypePOSIX, error(), lldb_private::WaitStatus::Exit, lldb_private::NativeProcessProtocol::GetID(), lldb_private::GetLog(), LLDB_LOG, MonitorCallback(), MonitorExited(), lldb_private::Process, lldb_private::WaitStatus::Signal, lldb_private::WaitStatus::status, lldb_private::WaitStatus::Stop, and lldb_private::WaitStatus::type.
Referenced by NativeProcessNetBSD().
|
overridevirtual |
Sends a process a UNIX signal signal.
Implements lldb_private::NativeProcessProtocol.
Definition at line 572 of file NativeProcessNetBSD.cpp.
References error(), and lldb_private::NativeProcessProtocol::GetID().
|
static |
Definition at line 382 of file NativeProcessNetBSD.cpp.
References error(), lldb_private::GetLog(), LLDB_LOG, lldb_private::Ptrace, PtraceWrapper(), and SIGSTOP.
Referenced by Halt(), and Interrupt().
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 746 of file NativeProcessNetBSD.cpp.
References lldb_private::NativeProcessProtocol::m_threads.
|
overridevirtual |
Implements lldb_private::NativeProcessProtocol.
Definition at line 926 of file NativeProcessNetBSD.cpp.
References error(), lldb_private::NativeProcessProtocol::GetID(), lldb_private::GetLog(), LLDB_LOG, lldb_private::Memory, and PtraceWrapper().
|
private |
Definition at line 97 of file NativeProcessNetBSD.h.
Referenced by GetArchitecture(), and MonitorClone().
|
private |
Definition at line 98 of file NativeProcessNetBSD.h.
Referenced by MonitorClone().
|
private |
Definition at line 100 of file NativeProcessNetBSD.h.
Referenced by GetFileLoadAddress(), GetLoadedModuleFileSpec(), GetMemoryRegionInfo(), and PopulateMemoryRegionCache().
|
private |
Definition at line 96 of file NativeProcessNetBSD.h.
Referenced by Detach(), and NativeProcessNetBSD().
|
private |
Definition at line 99 of file NativeProcessNetBSD.h.
Referenced by GetMemoryRegionInfo(), and PopulateMemoryRegionCache().