mirror of
https://github.com/opnsense/src.git
synced 2026-05-28 04:12:45 -04:00
sched: Simplify sched_lend_user_prio_cond()
If 'td_lend_user_pri' has the expected value, there is no need to check
the fields that sched_lend_user_prio() modifies, they either are already
good or soon will be ('td->td_lend_user_pri' has just been changed by
a concurrent update).
Reviewed by: kib
Approved by: emaste (mentor)
MFC after: 2 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D44050
(cherry picked from commit aeff15b392e68f5f193fff3bb01728b965cacc3a)
Approved by: emaste (mentor)
(cherry picked from commit b8b729e23c)
Approved by: emaste (mentor)
Approved by: re (cperciva)
This commit is contained in:
parent
9dad96bc63
commit
81ddf56306
2 changed files with 4 additions and 16 deletions
|
|
@ -981,15 +981,9 @@ void
|
|||
sched_lend_user_prio_cond(struct thread *td, u_char prio)
|
||||
{
|
||||
|
||||
if (td->td_lend_user_pri != prio)
|
||||
goto lend;
|
||||
if (td->td_user_pri != min(prio, td->td_base_user_pri))
|
||||
goto lend;
|
||||
if (td->td_priority != td->td_user_pri)
|
||||
goto lend;
|
||||
return;
|
||||
if (td->td_lend_user_pri == prio)
|
||||
return;
|
||||
|
||||
lend:
|
||||
thread_lock(td);
|
||||
sched_lend_user_prio(td, prio);
|
||||
thread_unlock(td);
|
||||
|
|
|
|||
|
|
@ -2007,15 +2007,9 @@ void
|
|||
sched_lend_user_prio_cond(struct thread *td, u_char prio)
|
||||
{
|
||||
|
||||
if (td->td_lend_user_pri != prio)
|
||||
goto lend;
|
||||
if (td->td_user_pri != min(prio, td->td_base_user_pri))
|
||||
goto lend;
|
||||
if (td->td_priority != td->td_user_pri)
|
||||
goto lend;
|
||||
return;
|
||||
if (td->td_lend_user_pri == prio)
|
||||
return;
|
||||
|
||||
lend:
|
||||
thread_lock(td);
|
||||
sched_lend_user_prio(td, prio);
|
||||
thread_unlock(td);
|
||||
|
|
|
|||
Loading…
Reference in a new issue