+ case PT_THUPDATE: {
+ thread_act_t target_act;
+
+ if ((unsigned)uap->data >= NSIG)
+ goto errorLabel;
+ th_act = (thread_act_t)port_name_to_act((void *)uap->addr);
+ if (th_act == THR_ACT_NULL)
+ return (ESRCH);
+ ut = (uthread_t)get_bsdthread_info(th_act);
+ if (uap->data)
+ ut->uu_siglist |= sigmask(uap->data);
+ t->p_xstat = uap->data;
+ t->p_stat = SRUN;
+ act_deallocate(th_act);
+ return(0);
+ }
+ break;
+errorLabel: