new_thread
struct thread_struct *new_thread)
old_thread->vrsave != new_thread->vrsave)
mtspr(SPRN_VRSAVE, new_thread->vrsave);
old_thread->spefscr != new_thread->spefscr)
mtspr(SPRN_SPEFSCR, new_thread->spefscr);
if (new_thread->dscr_inherit)
dscr = new_thread->dscr;
if (old_thread->bescr != new_thread->bescr)
mtspr(SPRN_BESCR, new_thread->bescr);
if (old_thread->ebbhr != new_thread->ebbhr)
mtspr(SPRN_EBBHR, new_thread->ebbhr);
if (old_thread->ebbrr != new_thread->ebbrr)
mtspr(SPRN_EBBRR, new_thread->ebbrr);
if (old_thread->fscr != new_thread->fscr)
mtspr(SPRN_FSCR, new_thread->fscr);
if (old_thread->tar != new_thread->tar)
mtspr(SPRN_TAR, new_thread->tar);
old_thread->tidr != new_thread->tidr)
mtspr(SPRN_TIDR, new_thread->tidr);
old_thread->hashkeyr != new_thread->hashkeyr)
mtspr(SPRN_HASHKEYR, new_thread->hashkeyr);
old_thread->dexcr != new_thread->dexcr)
mtspr(SPRN_DEXCR, new_thread->dexcr);
struct thread_struct *new_thread, *old_thread;
new_thread = &new->thread;
restore_sprs(old_thread, new_thread);
last = _switch(old_thread, new_thread);
extern void new_thread(void *stack, jmp_buf *buf, void (*handler)(void));
new_thread(task_stack_page(p), &p->thread.switch_buf, handler);
new_thread(task_stack_page(idle), &idle->thread.switch_buf,
struct binder_proc *proc, struct binder_thread *new_thread)
if (!new_thread)
thread = new_thread;
INIT_LIST_HEAD(&new_thread->waiting_thread_node);
struct binder_thread *new_thread;
new_thread = kzalloc_obj(*thread);
if (new_thread == NULL)
thread = binder_get_thread_ilocked(proc, new_thread);
if (thread != new_thread)
kfree(new_thread);
void vdo_register_allocating_thread(struct registered_thread *new_thread,
vdo_register_thread(&allocating_threads, new_thread, flag_ptr);
void vdo_register_allocating_thread(struct registered_thread *new_thread,
void vdo_register_thread_device_id(struct registered_thread *new_thread,
vdo_register_thread(&device_id_thread_registry, new_thread, id_ptr);
void vdo_register_thread_device_id(struct registered_thread *new_thread,
struct registered_thread *new_thread, const void *pointer)
INIT_LIST_HEAD(&new_thread->links);
new_thread->pointer = pointer;
new_thread->task = current;
list_add_tail_rcu(&new_thread->links, ®istry->links);
struct registered_thread *new_thread, const void *pointer);
const char *name, struct thread **new_thread)
*new_thread = thread;
const char *name, struct thread **new_thread);