diff options
| author | Xie Yuanbin <qq570070308@gmail.com> | 2026-02-17 00:49:49 +0800 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2026-03-06 06:21:48 +0100 |
| commit | 54a66e431eeacf23e1dc47cb3507f2d0c068aaf0 (patch) | |
| tree | ae8a751c428ce4de3807c6746e8fc3b8272ada06 /kernel | |
| parent | 4b9ef32c57a68eb98c45835c2beaa77f8e51c5c4 (diff) | |
sched/headers: Inline raw_spin_rq_unlock()
raw_spin_rq_unlock() is short, and is called in some hot code paths
such as finish_lock_switch().
Inline raw_spin_rq_unlock() to micro-optimize performance a bit.
Signed-off-by: Xie Yuanbin <qq570070308@gmail.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://patch.msgid.link/20260216164950.147617-3-qq570070308@gmail.com
Diffstat (limited to 'kernel')
| -rw-r--r-- | kernel/sched/core.c | 5 | ||||
| -rw-r--r-- | kernel/sched/sched.h | 9 |
2 files changed, 6 insertions, 8 deletions
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index bfd280ec0f97..b59bab255e57 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -687,11 +687,6 @@ bool raw_spin_rq_trylock(struct rq *rq) } } -void raw_spin_rq_unlock(struct rq *rq) -{ - raw_spin_unlock(rq_lockp(rq)); -} - /* * double_rq_lock - safely lock two runqueues */ diff --git a/kernel/sched/sched.h b/kernel/sched/sched.h index fa2237e89bee..953d89d71804 100644 --- a/kernel/sched/sched.h +++ b/kernel/sched/sched.h @@ -1607,15 +1607,18 @@ extern void raw_spin_rq_lock_nested(struct rq *rq, int subclass) extern bool raw_spin_rq_trylock(struct rq *rq) __cond_acquires(true, __rq_lockp(rq)); -extern void raw_spin_rq_unlock(struct rq *rq) - __releases(__rq_lockp(rq)); - static inline void raw_spin_rq_lock(struct rq *rq) __acquires(__rq_lockp(rq)) { raw_spin_rq_lock_nested(rq, 0); } +static inline void raw_spin_rq_unlock(struct rq *rq) + __releases(__rq_lockp(rq)) +{ + raw_spin_unlock(rq_lockp(rq)); +} + static inline void raw_spin_rq_lock_irq(struct rq *rq) __acquires(__rq_lockp(rq)) { |
