diff options
author | Eric Dumazet <[email protected]> | 2018-03-23 14:58:18 -0700 |
---|---|---|
committer | Thomas Gleixner <[email protected]> | 2018-03-27 12:01:48 +0200 |
commit | 67bbd7a8d6bcdc44cc27105ae8c374e9176ceaf1 (patch) | |
tree | aa876adde482382ffae7c3447a3179f9afde385d /tools/perf/scripts/python/call-graph-from-sql.py | |
parent | 07cde313b2d21f728cec2836db7cdb55476f7a26 (diff) |
x86/cpuid: Allow cpuid_read() to schedule
High latencies can be observed caused by a daemon periodically reading
CPUID on all cpus. On KASAN enabled kernels ~10ms latencies can be
observed. Even without KASAN, sending an IPI to a CPU, which is in a deep
sleep state or in a long hard IRQ disabled section, waiting for the answer
can consume hundreds of microseconds.
cpuid_read() is invoked in preemptible context, so it can be converted to
sleep instead of busy wait.
Switching to smp_call_function_single_async() and a completion allows to
reschedule and reduces CPU usage and latencies.
Signed-off-by: Eric Dumazet <[email protected]>
Signed-off-by: Thomas Gleixner <[email protected]>
Acked-by: Ingo Molnar <[email protected]>
Cc: Hugh Dickins <[email protected]>
Cc: Borislav Petkov <[email protected]>
Cc: Eric Dumazet <[email protected]>
Link: https://lkml.kernel.org/r/[email protected]
Diffstat (limited to 'tools/perf/scripts/python/call-graph-from-sql.py')
0 files changed, 0 insertions, 0 deletions