| /kernel/object/include/object/ |
| A D | thread_dispatcher.h | 35 class ThreadDispatcher final : 36 public SoloDispatcher<ThreadDispatcher, ZX_DEFAULT_THREAD_RIGHTS> { 41 ThreadDispatcher& obj) { in node_state() 74 ~ThreadDispatcher(); 76 static ThreadDispatcher* GetCurrent() { in GetCurrent() 171 : thread_(ThreadDispatcher::GetCurrent()), in AutoBlocked() 180 ThreadDispatcher* const thread_; 186 ThreadDispatcher(const ThreadDispatcher&) = delete; 187 ThreadDispatcher& operator=(const ThreadDispatcher&) = delete; 216 fbl::DoublyLinkedListNodeState<ThreadDispatcher*> dll_thread_; [all …]
|
| A D | excp_port.h | 25 class ThreadDispatcher; variable 44 zx_status_t SendPacket(ThreadDispatcher* thread, uint32_t type); 46 void OnThreadStartForDebugger(ThreadDispatcher* thread); 47 void OnThreadExitForDebugger(ThreadDispatcher* thread); 48 void OnProcessStartForDebugger(ThreadDispatcher* thread); 54 void SetTarget(const fbl::RefPtr<ThreadDispatcher>& target);
|
| A D | process_dispatcher.h | 57 ThreadDispatcher* current = ThreadDispatcher::GetCurrent(); in GetCurrent() 240 fbl::RefPtr<ThreadDispatcher> LookupThreadById(zx_koid_t koid); 297 void OnProcessStartForJobDebugger(ThreadDispatcher *t); 303 friend class ThreadDispatcher; variable 304 zx_status_t AddThread(ThreadDispatcher* t, bool initial_thread, bool* suspended); 305 void RemoveThread(ThreadDispatcher* t); 331 using ThreadList = fbl::DoublyLinkedList<ThreadDispatcher*, ThreadDispatcher::ThreadListTraits>;
|
| A D | profile_dispatcher.h | 27 zx_status_t ApplyProfile(fbl::RefPtr<ThreadDispatcher> thread);
|
| A D | dispatcher.h | 48 DECLARE_DISPTAG(ThreadDispatcher, ZX_OBJ_TYPE_THREAD) in DECLARE_DISPTAG()
|
| /kernel/object/ |
| A D | thread_dispatcher.cpp | 61 ThreadDispatcher::ThreadDispatcher(fbl::RefPtr<ProcessDispatcher> process, in ThreadDispatcher() function in ThreadDispatcher 67 ThreadDispatcher::~ThreadDispatcher() { in ~ThreadDispatcher() 214 void ThreadDispatcher::Exit() { in Exit() 235 void ThreadDispatcher::Kill() { in Kill() 262 zx_status_t ThreadDispatcher::Suspend() { in Suspend() 300 void ThreadDispatcher::Resume() { in Resume() 341 ThreadDispatcher* t = reinterpret_cast<ThreadDispatcher*>(d->arg); in ThreadCleanupDpc() 347 void ThreadDispatcher::Exiting() { in Exiting() 402 void ThreadDispatcher::Suspending() { in Suspending() 419 void ThreadDispatcher::Resuming() { in Resuming() [all …]
|
| A D | exception.cpp | 55 explicit ExceptionPortIterator(ThreadDispatcher* thread) in ExceptionPortIterator() 111 ThreadDispatcher* thread_; 120 ThreadDispatcher* thread, in try_exception_handler() 148 ThreadDispatcher* thread, in exception_handler_worker() 222 ThreadDispatcher* thread = ThreadDispatcher::GetCurrent(); in dispatch_user_exception() 229 ThreadDispatcher::AutoBlocked by(ThreadDispatcher::Blocked::EXCEPTION); in dispatch_user_exception()
|
| A D | suspend_token_dispatcher.cpp | 23 if (auto thread = DownCastDispatcher<ThreadDispatcher>(&task)) { in SuspendTask() 24 if (thread.get() == ThreadDispatcher::GetCurrent()) in SuspendTask() 41 if (auto thread = DownCastDispatcher<ThreadDispatcher>(&task)) { in ResumeTask()
|
| A D | excp_port.cpp | 99 void ExceptionPort::SetTarget(const fbl::RefPtr<ThreadDispatcher>& target) { in SetTarget() 159 auto thread = DownCastDispatcher<ThreadDispatcher>(&target_); in OnPortZeroHandles() 246 zx_status_t ExceptionPort::SendPacket(ThreadDispatcher* thread, uint32_t type) { in SendPacket() 266 void ExceptionPort::OnThreadStartForDebugger(ThreadDispatcher* thread) { in OnThreadStartForDebugger() 291 void ExceptionPort::OnProcessStartForDebugger(ThreadDispatcher* thread) { in OnProcessStartForDebugger() 319 void ExceptionPort::OnThreadExitForDebugger(ThreadDispatcher* thread) { in OnThreadExitForDebugger()
|
| A D | profile_dispatcher.cpp | 50 zx_status_t ProfileDispatcher::ApplyProfile(fbl::RefPtr<ThreadDispatcher> thread) { in ApplyProfile()
|
| A D | futex_node.cpp | 158 ThreadDispatcher::AutoBlocked by(ThreadDispatcher::Blocked::FUTEX); in BlockThread()
|
| A D | interrupt_dispatcher.cpp | 48 ThreadDispatcher::AutoBlocked by(ThreadDispatcher::Blocked::INTERRUPT); in WaitForInterrupt()
|
| A D | channel_dispatcher.cpp | 230 auto waiter = ThreadDispatcher::GetCurrent()->GetMessageWaiter(); in Call() 296 ThreadDispatcher::AutoBlocked by(ThreadDispatcher::Blocked::CHANNEL); in ResumeInterruptedCall()
|
| A D | process_dispatcher.cpp | 194 ThreadDispatcher::GetCurrent()->Exit(); in Exit() 289 zx_status_t ProcessDispatcher::AddThread(ThreadDispatcher* t, in AddThread() 323 void ProcessDispatcher::RemoveThread(ThreadDispatcher* t) { in RemoveThread() 806 fbl::RefPtr<ThreadDispatcher> ProcessDispatcher::LookupThreadById(zx_koid_t koid) { in LookupThreadById() 810 …auto iter = thread_list_.find_if([koid](const ThreadDispatcher& t) { return t.get_koid() == koid; … in LookupThreadById() 875 void ProcessDispatcher::OnProcessStartForJobDebugger(ThreadDispatcher *t) { in OnProcessStartForJobDebugger()
|
| A D | port_dispatcher.cpp | 341 ThreadDispatcher::AutoBlocked by(ThreadDispatcher::Blocked::PORT); in Dequeue()
|
| /kernel/syscalls/ |
| A D | object_wait.cpp | 76 ThreadDispatcher::AutoBlocked by(ThreadDispatcher::Blocked::WAIT_ONE); in sys_object_wait_one() 157 ThreadDispatcher::AutoBlocked by(ThreadDispatcher::Blocked::WAIT_MANY); in sys_object_wait_many()
|
| A D | exceptions.cpp | 45 auto thread = DownCastDispatcher<ThreadDispatcher>(&dispatcher); in object_unbind_exception_port() 108 auto thread = DownCastDispatcher<ThreadDispatcher>(&dispatcher); in task_bind_exception_port() 150 fbl::RefPtr<ThreadDispatcher> thread; in sys_task_resume_from_exception()
|
| A D | zircon.cpp | 53 ThreadDispatcher::AutoBlocked by(ThreadDispatcher::Blocked::SLEEPING); in sys_nanosleep() 76 return ThreadDispatcher::GetCurrent()->runtime_ns(); in sys_clock_get() 94 time = ThreadDispatcher::GetCurrent()->runtime_ns(); in sys_clock_get_new()
|
| A D | task.cpp | 180 result = ThreadDispatcher::Create(ktl::move(process), options, sp, in sys_thread_create() 201 fbl::RefPtr<ThreadDispatcher> thread; in sys_thread_start() 218 ThreadDispatcher::GetCurrent()->Exit(); in sys_thread_exit() 229 fbl::RefPtr<ThreadDispatcher> thread; in sys_thread_read_state() 258 fbl::RefPtr<ThreadDispatcher> thread; in sys_thread_write_state() 424 fbl::RefPtr<ThreadDispatcher> thread; in sys_process_start() 629 return kill_task<ThreadDispatcher>(ktl::move(dispatcher)); in sys_task_kill()
|
| A D | profile.cpp | 68 fbl::RefPtr<ThreadDispatcher> thread; in sys_object_set_profile()
|
| A D | futex.cpp | 23 ProcessDispatcher* dispatcher = ThreadDispatcher::GetCurrent()->process(); in sys_futex_wait()
|
| A D | object.cpp | 252 fbl::RefPtr<ThreadDispatcher> thread; in sys_object_get_info() 272 fbl::RefPtr<ThreadDispatcher> thread; in sys_object_get_info() 292 fbl::RefPtr<ThreadDispatcher> thread; in sys_object_get_info() 704 auto thread_dispatcher = DownCastDispatcher<ThreadDispatcher>(dispatcher); in is_current_thread() 707 if (thread_dispatcher.get() != ThreadDispatcher::GetCurrent()) in is_current_thread()
|
| A D | channel.cpp | 399 auto waiter = ThreadDispatcher::GetCurrent()->GetMessageWaiter(); in sys_channel_call_finish()
|
| /kernel/lib/userboot/ |
| A D | userboot.cpp | 392 fbl::RefPtr<ThreadDispatcher> thread; in attempt_userboot() 397 status = ThreadDispatcher::Create(proc, 0, "userboot", &ut_disp, &rights); in attempt_userboot() 401 thread = DownCastDispatcher<ThreadDispatcher>(&ut_disp); in attempt_userboot()
|
| /kernel/include/kernel/ |
| A D | thread.h | 25 class ThreadDispatcher; variable 146 ThreadDispatcher* user_thread;
|