• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.5.8/xnu-1228.15.4/osfmk/i386/

Lines Matching defs:thread

77 #include <kern/thread.h>
89 #include <i386/thread.h>
136 thread_t thread);
139 get_exception_state32(thread_t thread, x86_exception_state32_t *es);
142 get_exception_state64(thread_t thread, x86_exception_state64_t *es);
145 get_thread_state32(thread_t thread, x86_thread_state32_t *ts);
148 get_thread_state64(thread_t thread, x86_thread_state64_t *ts);
151 set_thread_state32(thread_t thread, x86_thread_state32_t *ts);
154 set_thread_state64(thread_t thread, x86_thread_state64_t *ts);
250 set_debug_state32(thread_t thread, x86_debug_state32_t *ds)
255 pcb = thread->machine.pcb;
311 set_debug_state64(thread_t thread, x86_debug_state64_t *ds)
316 pcb = thread->machine.pcb;
371 get_debug_state32(thread_t thread, x86_debug_state32_t *ds)
375 saved_state = thread->machine.pcb->ids;
391 get_debug_state64(thread_t thread, x86_debug_state64_t *ds)
395 saved_state = (x86_debug_state64_t *)thread->machine.pcb->ids;
469 * The test above is performed against the thread save state
471 * thread/task 64-bit state divergence that can arise in
473 * the individual thread(s).
551 * Set the thread`s cthread (a.k.a pthread)
567 * Set the thread`s LDT or LDT entry.
589 * Switch to the first thread on a CPU.
601 * Switch to a new thread.
602 * Save the old thread`s kernel state or continuation,
630 * Load the rest of the user state for the new thread
654 thread_t thread)
661 if (thread->machine.pcb->ifps) {
662 (void) fpu_set_fxstate(thread, NULL);
664 if (thread == current_thread())
703 get_exception_state64(thread_t thread, x86_exception_state64_t *es)
707 saved_state = USER_REGS64(thread);
715 get_exception_state32(thread_t thread, x86_exception_state32_t *es)
719 saved_state = USER_REGS32(thread);
728 set_thread_state32(thread_t thread, x86_thread_state32_t *ts)
732 saved_state = USER_REGS32(thread);
780 set_thread_state64(thread_t thread, x86_thread_state64_t *ts)
784 saved_state = USER_REGS64(thread);
818 get_thread_state32(thread_t thread, x86_thread_state32_t *ts)
822 saved_state = USER_REGS32(thread);
844 get_thread_state64(thread_t thread, x86_thread_state64_t *ts)
848 saved_state = USER_REGS64(thread);
875 thread_set_wq_state32(thread_t thread, thread_state_t tstate)
881 saved_state = USER_REGS32(thread);
884 if (curth != thread)
885 thread_lock(thread);
902 if (curth != thread)
903 thread_unlock(thread);
908 thread_set_wq_state64(thread_t thread, thread_state_t tstate)
914 saved_state = USER_REGS64(thread);
917 if (curth != thread)
918 thread_lock(thread);
932 if (curth != thread)
933 thread_unlock(thread);
941 * Set the status of the specified thread.
1227 * Get the status of the specified thread.
1547 thread_t thread,
1554 * This works only for an interrupted kernel thread
1556 if (thread != current_thread() || current_cpu_datap()->cpu_int_state == NULL)
1600 // wrap a 32 bit thread state into a 32/64bit clean thread state
1645 * Initialize the machine-dependent state for a new thread.
1649 thread_t thread,
1652 pcb_t pcb = &thread->machine.xxx_pcb;
1657 inval_copy_windows(thread);
1659 thread->machine.physwindow_pte = 0;
1660 thread->machine.physwindow_busy = 0;
1681 * Guarantee that the bootstrapped thread will be in user
1719 * Guarantee that the bootstrapped thread will be in user
1733 thread->machine.pcb = pcb;
1753 * Machine-dependent cleanup prior to destroying a thread
1757 thread_t thread)
1759 register pcb_t pcb = thread->machine.pcb;
1773 thread->machine.pcb = (pcb_t)0;
1778 machine_thread_switch_addrmode(thread_t thread)
1782 * - particularly if we're switching the current thread
1789 machine_thread_create(thread, thread->task);
1792 if (thread == current_thread()) {
1795 act_machine_switch_pcb(thread);
1803 * This is used to set the current thr_act/thread
1807 machine_set_current_thread( thread_t thread )
1809 current_cpu_datap()->cpu_active_thread = thread;
1841 * This routine terminates the current thread activation.
1843 * thread shuttle, then the entire thread (shuttle plus
1857 * Perform machine-dependent per-thread initializations
1956 printf("thread(%p)(%d): task=%p(%d)\n",
2003 * detach and return a kernel stack from a thread
2007 machine_stack_detach(thread_t thread)
2012 thread, thread->priority,
2013 thread->sched_pri, 0,
2016 stack = thread->kernel_stack;
2017 thread->kernel_stack = 0;
2023 * attach a kernel stack to a thread and initialize it
2028 thread_t thread,
2034 thread, thread->priority,
2035 thread->sched_pri, 0, 0);
2038 thread->kernel_stack = stack;
2049 * move a stack from old to new thread
2229 void x86_toggle_sysenter_arg_store(thread_t thread, boolean_t valid);
2230 void x86_toggle_sysenter_arg_store(thread_t thread, boolean_t valid) {
2231 thread->machine.pcb->arg_store_valid = valid;
2234 boolean_t x86_sysenter_arg_store_isvalid(thread_t thread);
2236 boolean_t x86_sysenter_arg_store_isvalid(thread_t thread) {
2237 return (thread->machine.pcb->arg_store_valid);