summaryrefslogtreecommitdiffstats
path: root/crypto/tea.c
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2018-03-23 14:58:17 -0700
committerThomas Gleixner <tglx@linutronix.de>2018-03-27 12:01:47 +0200
commit07cde313b2d21f728cec2836db7cdb55476f7a26 (patch)
tree88e450ffab9354ddc069700898fb9d7d21c192b3 /crypto/tea.c
parent13cc36d76bc4f5a9801ae32630bc8240ba0cc522 (diff)
downloadop-kernel-dev-07cde313b2d21f728cec2836db7cdb55476f7a26.zip
op-kernel-dev-07cde313b2d21f728cec2836db7cdb55476f7a26.tar.gz
x86/msr: Allow rdmsr_safe_on_cpu() to schedule
High latencies can be observed caused by a daemon periodically reading various MSR on all cpus. On KASAN enabled kernels ~10ms latencies can be observed simply reading one MSR. 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. All usage sites are in preemptible context, convert rdmsr_safe_on_cpu() to use a completion instead of busy polling. Overall daemon cpu usage was reduced by 35 %, and latencies caused by msr_read() disappeared. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Acked-by: Ingo Molnar <mingo@kernel.org> Cc: Hugh Dickins <hughd@google.com> Cc: Borislav Petkov <bp@alien8.de> Cc: Eric Dumazet <eric.dumazet@gmail.com> Link: https://lkml.kernel.org/r/20180323215818.127774-1-edumazet@google.com
Diffstat (limited to 'crypto/tea.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud