Lines Matching refs:thread
90 brnz,pt %o4, 0f ! if user thread skip
94 ! kernel thread
113 ! user thread
144 mov THREAD_REG, %o0 ! delay - arg = thread pointer
149 ! Temporarily switch to idle thread's stack
161 stn %o0, [%i1 + CPU_THREAD] ! set CPU's thread to idle
164 ! Clear and unlock previous thread's t_lock
214 ! if resume from user to kernel thread
216 ! if resume from kernel (or a different user) thread to user thread
275 ! it becomes safe for the thread to run.
283 ! Fix CPU structure to indicate new running thread.
284 ! Set pointer in new thread to the CPU structure.
287 ldx [%i0 + T_CPU], %g2 ! last CPU to run the new thread
294 stx %i1, [%i0 + T_CPU] ! set new thread's CPU pointer
296 stx %i0, [%i1 + CPU_THREAD] ! set CPU's thread pointer
298 mov %i0, THREAD_REG ! update global thread register
313 ! Switch to new thread's stack
318 ! Restore resuming thread's GSR reg and floating-point regs
351 ldx [%i0 + T_CTX], %i5 ! should resumed thread restorectx?
361 ! kernel thread
362 ! i0 = new thread
364 ! Switch to new thread's stack
370 ! Restore resuming thread's GSR reg and floating-point regs
395 call restorectx ! thread can not sleep on temp stack
396 mov THREAD_REG, %o0 ! delay slot - arg = thread pointer
406 ! If we are resuming an interrupt thread, store a starting timestamp
407 ! in the thread structure.
457 ! the zombie thread's stack can be reclaimed by the reaper.
475 stn %o2, [%i1 + CPU_THREAD] ! delay - CPU's thread = idle
479 ! %i0 = new thread
495 ! This is to resolve an issue where an interrupting thread
521 ! Fix CPU structure to indicate new running thread.
522 ! The pinned thread we're resuming already has the CPU pointer set.
525 stn %i0, [%i1 + CPU_THREAD] ! set CPU's thread pointer
527 mov %i0, THREAD_REG ! update global thread register
530 ! Switch to new thread's stack
535 clrb [%l3 + T_LOCK] ! clear intr thread's tp->t_lock
545 ! We're resuming a non-interrupt thread.
599 call thread_exit ! destroy thread if it returns.