Use sched_lock to protect rtp_to_pri() and pri_to_rtp() when needed.

This commit is contained in:
John Baldwin 2001-09-02 01:05:36 +00:00
parent 51b4eed974
commit e342cd279f

@ -284,7 +284,9 @@ rtprio(curp, uap)
case RTP_LOOKUP: case RTP_LOOKUP:
if ((error = p_cansee(curp, p))) if ((error = p_cansee(curp, p)))
break; break;
mtx_lock_spin(&sched_lock);
pri_to_rtp(&p->p_pri, &rtp); pri_to_rtp(&p->p_pri, &rtp);
mtx_unlock_spin(&sched_lock);
error = copyout(&rtp, uap->rtp, sizeof(struct rtprio)); error = copyout(&rtp, uap->rtp, sizeof(struct rtprio));
break; break;
case RTP_SET: case RTP_SET:
@ -314,7 +316,9 @@ rtprio(curp, uap)
break; break;
} }
} }
mtx_lock_spin(&sched_lock);
error = rtp_to_pri(&rtp, &p->p_pri); error = rtp_to_pri(&rtp, &p->p_pri);
mtx_unlock_spin(&sched_lock);
break; break;
default: default:
error = EINVAL; error = EINVAL;