diff options
author | Sebastian Andrzej Siewior <bigeasy@linutronix.de> | 2020-08-19 22:00:25 +0200 |
---|---|---|
committer | Peter Zijlstra <peterz@infradead.org> | 2020-08-26 12:41:58 +0200 |
commit | c1cecf884ad748f63f9139d5a18ee265ee2f70fb (patch) | |
tree | 9fdcfe0c0b9d905d20932c1aba3971ac14bd2b4a /init | |
parent | sched: Bring the PF_IO_WORKER and PF_WQ_WORKER bits closer together (diff) | |
download | linux-c1cecf884ad748f63f9139d5a18ee265ee2f70fb.tar.xz linux-c1cecf884ad748f63f9139d5a18ee265ee2f70fb.zip |
sched: Cache task_struct::flags in sched_submit_work()
sched_submit_work() is considered to be a hot path. The preempt_disable()
instruction is a compiler barrier and forces the compiler to load
task_struct::flags for the second comparison.
By using a local variable, the compiler can load the value once and keep it in
a register for the second comparison.
Verified on x86-64 with gcc-10.
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: https://lkml.kernel.org/r/20200819200025.lqvmyefqnbok5i4f@linutronix.de
Diffstat (limited to 'init')
0 files changed, 0 insertions, 0 deletions