Commit c20d36cc authored by Jisheng Zhang's avatar Jisheng Zhang Committed by Palmer Dabbelt

riscv: don't probe unaligned access speed if already done

If misaligned_access_speed percpu var isn't so called "HWPROBE
MISALIGNED UNKNOWN", it means the probe has happened(this is possible
for example, hotplug off then hotplug on one cpu), and the percpu var
has been set, don't probe again in this case.
Signed-off-by: default avatarJisheng Zhang <jszhang@kernel.org>
Fixes: 584ea656 ("RISC-V: Probe for unaligned access speed")
Reviewed-by: default avatarConor Dooley <conor.dooley@microchip.com>
Link: https://lore.kernel.org/r/20230912154040.3306-1-jszhang@kernel.orgSigned-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
parent 07863871
......@@ -572,6 +572,10 @@ void check_unaligned_access(int cpu)
if (check_unaligned_access_emulated(cpu))
return;
/* We are already set since the last check */
if (per_cpu(misaligned_access_speed, cpu) != RISCV_HWPROBE_MISALIGNED_UNKNOWN)
return;
page = alloc_pages(GFP_NOWAIT, get_order(MISALIGNED_BUFFER_SIZE));
if (!page) {
pr_warn("Can't alloc pages to measure memcpy performance");
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment