* The debug_thread_info records now, which signals the debugger wishes

not to be notified.
* Added debugger commands for setting/getting of thread signal ignore
  masks and signal handlers.
* Renamed user_debug_fault_occurred() to a more correct
  user_debug_exception_occurred(). It no longer sends a `stopped' message,
  but the new one dedicated to exceptions. Additionally the number of the
  signal is supplied that will be sent, when the thread continues (without
  indicating to ignore the event).


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@11703 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Ingo Weinhold
2005-03-12 21:43:35 +00:00
parent 03f92cacce
commit 293a59b0e9
2 changed files with 213 additions and 8 deletions
+7 -1
View File
@@ -55,6 +55,12 @@ struct thread_debug_info {
port_id debug_port;
// the port the thread is waiting on for commands from the nub thread
uint64 ignore_signals;
// the signals the debugger is not interested in
uint64 ignore_signals_once;
// the signals the debugger wishes not to be notified of, when they
// occur the next time
struct arch_thread_debug_info arch_info;
};
@@ -139,7 +145,7 @@ void destroy_thread_debug_info(struct thread_debug_info *info);
void user_debug_pre_syscall(uint32 syscall, void *args);
void user_debug_post_syscall(uint32 syscall, void *args, uint64 returnValue,
bigtime_t startTime);
bool user_debug_fault_occurred(debug_why_stopped fault);
bool user_debug_exception_occurred(debug_exception_type exception, int signal);
bool user_debug_handle_signal(int signal, struct sigaction *handler,
bool deadly);
void user_debug_stop_thread();