diff options
author | jhb <jhb@FreeBSD.org> | 2001-09-02 01:05:36 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2001-09-02 01:05:36 +0000 |
commit | 74879eba28d44cd9745b00154181d663455b628b (patch) | |
tree | 0d7ab336134df03b039dd8ba2ecf1d9527cd38a0 /sys/kern/kern_resource.c | |
parent | 58eccaba8799f72c45c078cf487f89d17a4a3d79 (diff) | |
download | FreeBSD-src-74879eba28d44cd9745b00154181d663455b628b.zip FreeBSD-src-74879eba28d44cd9745b00154181d663455b628b.tar.gz |
Use sched_lock to protect rtp_to_pri() and pri_to_rtp() when needed.
Diffstat (limited to 'sys/kern/kern_resource.c')
-rw-r--r-- | sys/kern/kern_resource.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/kern/kern_resource.c b/sys/kern/kern_resource.c index c3c39fe..3b65ace 100644 --- a/sys/kern/kern_resource.c +++ b/sys/kern/kern_resource.c @@ -284,7 +284,9 @@ rtprio(curp, uap) case RTP_LOOKUP: if ((error = p_cansee(curp, p))) break; + mtx_lock_spin(&sched_lock); pri_to_rtp(&p->p_pri, &rtp); + mtx_unlock_spin(&sched_lock); error = copyout(&rtp, uap->rtp, sizeof(struct rtprio)); break; case RTP_SET: @@ -314,7 +316,9 @@ rtprio(curp, uap) break; } } + mtx_lock_spin(&sched_lock); error = rtp_to_pri(&rtp, &p->p_pri); + mtx_unlock_spin(&sched_lock); break; default: error = EINVAL; |