diff options
author | Peter Zijlstra <peterz@infradead.org> | 2023-06-09 20:52:55 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2023-09-13 15:01:14 +0200 |
commit | 94b548a15e8ec47dfbf6925bdfb64bb5657dce0c (patch) | |
tree | 1f257fabbfb7225235baf8d4779674566edc8242 /kernel/sched/sched.h | |
parent | Linux 6.6-rc1 (diff) | |
download | wireguard-linux-94b548a15e8ec47dfbf6925bdfb64bb5657dce0c.tar.xz wireguard-linux-94b548a15e8ec47dfbf6925bdfb64bb5657dce0c.zip |
sched: Simplify set_user_nice()
Use guards to reduce gotos and simplify control flow.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/sched/sched.h')
-rw-r--r-- | kernel/sched/sched.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index 04846272409c..68768f47ccb7 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -1658,6 +1658,11 @@ task_rq_unlock(struct rq *rq, struct task_struct *p, struct rq_flags *rf) raw_spin_unlock_irqrestore(&p->pi_lock, rf->flags); } +DEFINE_LOCK_GUARD_1(task_rq_lock, struct task_struct, + _T->rq = task_rq_lock(_T->lock, &_T->rf), + task_rq_unlock(_T->rq, _T->lock, &_T->rf), + struct rq *rq; struct rq_flags rf) + static inline void rq_lock_irqsave(struct rq *rq, struct rq_flags *rf) __acquires(rq->lock) |