acquire(&handle->h_spinlock);
__pthread_lock(&handle->h_lock);
int pthread_setschedparam(pthread_t thread, int policy,                          const struct sched_param *param){  pthread_handle handle = thread_handle(thread);  pthread_descr th;  acquire(&handle->h_spinlock);  if (invalid_handle(handle, thread)) {    release(&handle->h_spinlock);    return ESRCH;  }  th = handle->h_descr;  if (__sched_setscheduler(th->p_pid, policy, param) == -1) {    release(&handle->h_spinlock);    return errno;  }  th->p_priority = policy == SCHED_OTHER ? 0 : param->sched_priority;  release(&handle->h_spinlock);  if (__pthread_manager_request >= 0)    __pthread_manager_adjust_prio(th->p_priority);  return 0;}