diff options
author | Guo Ren <[email protected]> | 2023-01-04 21:19:52 -0500 |
---|---|---|
committer | Ingo Molnar <[email protected]> | 2023-01-05 11:01:50 +0100 |
commit | 4282494a20cdcaf38d553f2c2ff6f252084f979c (patch) | |
tree | bea8c4e3804947e024255c90804de55bbb37e4f4 /scripts/gdb/linux/proc.py | |
parent | 512dee0c00ad9e9c7ae9f11fc6743702ea40caff (diff) |
locking/qspinlock: Micro-optimize pending state waiting for unlock
When we're pending, we only care about lock value. The xchg_tail
wouldn't affect the pending state. That means the hardware thread
could stay in a sleep state and leaves the rest execution units'
resources of pipeline to other hardware threads. This situation is
the SMT scenarios in the same core. Not an entering low-power state
situation. Of course, the granularity between cores is "cacheline",
but the granularity between SMT hw threads of the same core could
be "byte" which internal LSU handles. For example, when a hw-thread
yields the resources of the core to other hw-threads, this patch
could help the hw-thread stay in the sleep state and prevent it
from being woken up by other hw-threads xchg_tail.
Signed-off-by: Guo Ren <[email protected]>
Signed-off-by: Guo Ren <[email protected]>
Signed-off-by: Ingo Molnar <[email protected]>
Acked-by: Waiman Long <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Cc: Peter Zijlstra <[email protected]>
Diffstat (limited to 'scripts/gdb/linux/proc.py')
0 files changed, 0 insertions, 0 deletions