Message ID | 20250207161939.46139-15-ajones@ventanamicro.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | riscv: Unaligned access speed probing fixes and skipping | expand |
Context | Check | Description |
---|---|---|
bjorn/pre-ci_am | success | Success |
bjorn/build-rv32-defconfig | success | build-rv32-defconfig |
bjorn/build-rv64-clang-allmodconfig | success | build-rv64-clang-allmodconfig |
bjorn/build-rv64-gcc-allmodconfig | success | build-rv64-gcc-allmodconfig |
bjorn/build-rv64-nommu-k210-defconfig | success | build-rv64-nommu-k210-defconfig |
bjorn/build-rv64-nommu-k210-virt | success | build-rv64-nommu-k210-virt |
bjorn/checkpatch | success | checkpatch |
bjorn/dtb-warn-rv64 | success | dtb-warn-rv64 |
bjorn/header-inline | success | header-inline |
bjorn/kdoc | success | kdoc |
bjorn/module-param | success | module-param |
bjorn/verify-fixes | success | verify-fixes |
bjorn/verify-signedoff | success | verify-signedoff |
On 07/02/2025 17:19, Andrew Jones wrote: > The return value of check_unaligned_access_speed_all_cpus() is always > zero, so make the function void so we don't need to concern ourselves > with it. The change also allows us to tidy up > check_unaligned_access_all_cpus() a bit. > > Signed-off-by: Andrew Jones <ajones@ventanamicro.com> > --- > arch/riscv/kernel/unaligned_access_speed.c | 15 +++++---------- > 1 file changed, 5 insertions(+), 10 deletions(-) > > diff --git a/arch/riscv/kernel/unaligned_access_speed.c b/arch/riscv/kernel/unaligned_access_speed.c > index 02b485dc4bc4..780f1c5f512a 100644 > --- a/arch/riscv/kernel/unaligned_access_speed.c > +++ b/arch/riscv/kernel/unaligned_access_speed.c > @@ -218,7 +218,7 @@ static int riscv_offline_cpu(unsigned int cpu) > } > > /* Measure unaligned access speed on all CPUs present at boot in parallel. */ > -static int __init check_unaligned_access_speed_all_cpus(void) > +static void __init check_unaligned_access_speed_all_cpus(void) > { > unsigned int cpu; > unsigned int cpu_count = num_possible_cpus(); > @@ -226,7 +226,7 @@ static int __init check_unaligned_access_speed_all_cpus(void) > > if (!bufs) { > pr_warn("Allocation failure, not measuring misaligned performance\n"); > - return 0; > + return; > } > > /* > @@ -261,12 +261,10 @@ static int __init check_unaligned_access_speed_all_cpus(void) > } > > kfree(bufs); > - return 0; > } > #else /* CONFIG_RISCV_PROBE_UNALIGNED_ACCESS */ > -static int __init check_unaligned_access_speed_all_cpus(void) > +static void __init check_unaligned_access_speed_all_cpus(void) > { > - return 0; > } > #endif > > @@ -403,10 +401,10 @@ static int __init vec_check_unaligned_access_speed_all_cpus(void *unused __alway > > static int __init check_unaligned_access_all_cpus(void) > { > - bool all_cpus_emulated; > int cpu; > > - all_cpus_emulated = check_unaligned_access_emulated_all_cpus(); > + if (!check_unaligned_access_emulated_all_cpus()) > + check_unaligned_access_speed_all_cpus(); > > if (!has_vector()) { > for_each_online_cpu(cpu) > @@ -417,9 +415,6 @@ static int __init check_unaligned_access_all_cpus(void) > NULL, "vec_check_unaligned_access_speed_all_cpus"); > } > > - if (!all_cpus_emulated) > - return check_unaligned_access_speed_all_cpus(); > - > return 0; > } > Hi Andrew, I had a similar patch in an upcoming series but you were faster ! Reviewed-by: Clément Léger <cleger@rivosinc.com> Thanks, Clément
On 07/02/2025 17:19, Andrew Jones wrote: > The return value of check_unaligned_access_speed_all_cpus() is always > zero, so make the function void so we don't need to concern ourselves > with it. The change also allows us to tidy up > check_unaligned_access_all_cpus() a bit. > > Signed-off-by: Andrew Jones <ajones@ventanamicro.com> > --- > arch/riscv/kernel/unaligned_access_speed.c | 15 +++++---------- > 1 file changed, 5 insertions(+), 10 deletions(-) > > diff --git a/arch/riscv/kernel/unaligned_access_speed.c b/arch/riscv/kernel/unaligned_access_speed.c > index 02b485dc4bc4..780f1c5f512a 100644 > --- a/arch/riscv/kernel/unaligned_access_speed.c > +++ b/arch/riscv/kernel/unaligned_access_speed.c > @@ -218,7 +218,7 @@ static int riscv_offline_cpu(unsigned int cpu) > } > > /* Measure unaligned access speed on all CPUs present at boot in parallel. */ > -static int __init check_unaligned_access_speed_all_cpus(void) > +static void __init check_unaligned_access_speed_all_cpus(void) > { > unsigned int cpu; > unsigned int cpu_count = num_possible_cpus(); > @@ -226,7 +226,7 @@ static int __init check_unaligned_access_speed_all_cpus(void) > > if (!bufs) { > pr_warn("Allocation failure, not measuring misaligned performance\n"); > - return 0; > + return; > } > > /* > @@ -261,12 +261,10 @@ static int __init check_unaligned_access_speed_all_cpus(void) > } > > kfree(bufs); > - return 0; > } > #else /* CONFIG_RISCV_PROBE_UNALIGNED_ACCESS */ > -static int __init check_unaligned_access_speed_all_cpus(void) > +static void __init check_unaligned_access_speed_all_cpus(void) > { > - return 0; > } > #endif > > @@ -403,10 +401,10 @@ static int __init vec_check_unaligned_access_speed_all_cpus(void *unused __alway > > static int __init check_unaligned_access_all_cpus(void) > { > - bool all_cpus_emulated; > int cpu; > > - all_cpus_emulated = check_unaligned_access_emulated_all_cpus(); > + if (!check_unaligned_access_emulated_all_cpus()) > + check_unaligned_access_speed_all_cpus(); > > if (!has_vector()) { > for_each_online_cpu(cpu) > @@ -417,9 +415,6 @@ static int __init check_unaligned_access_all_cpus(void) > NULL, "vec_check_unaligned_access_speed_all_cpus"); > } > > - if (!all_cpus_emulated) > - return check_unaligned_access_speed_all_cpus(); > - > return 0; > } > Reviewed-by: Alexandre Ghiti <alexghiti@rivosinc.com> Thanks, Alex
diff --git a/arch/riscv/kernel/unaligned_access_speed.c b/arch/riscv/kernel/unaligned_access_speed.c index 02b485dc4bc4..780f1c5f512a 100644 --- a/arch/riscv/kernel/unaligned_access_speed.c +++ b/arch/riscv/kernel/unaligned_access_speed.c @@ -218,7 +218,7 @@ static int riscv_offline_cpu(unsigned int cpu) } /* Measure unaligned access speed on all CPUs present at boot in parallel. */ -static int __init check_unaligned_access_speed_all_cpus(void) +static void __init check_unaligned_access_speed_all_cpus(void) { unsigned int cpu; unsigned int cpu_count = num_possible_cpus(); @@ -226,7 +226,7 @@ static int __init check_unaligned_access_speed_all_cpus(void) if (!bufs) { pr_warn("Allocation failure, not measuring misaligned performance\n"); - return 0; + return; } /* @@ -261,12 +261,10 @@ static int __init check_unaligned_access_speed_all_cpus(void) } kfree(bufs); - return 0; } #else /* CONFIG_RISCV_PROBE_UNALIGNED_ACCESS */ -static int __init check_unaligned_access_speed_all_cpus(void) +static void __init check_unaligned_access_speed_all_cpus(void) { - return 0; } #endif @@ -403,10 +401,10 @@ static int __init vec_check_unaligned_access_speed_all_cpus(void *unused __alway static int __init check_unaligned_access_all_cpus(void) { - bool all_cpus_emulated; int cpu; - all_cpus_emulated = check_unaligned_access_emulated_all_cpus(); + if (!check_unaligned_access_emulated_all_cpus()) + check_unaligned_access_speed_all_cpus(); if (!has_vector()) { for_each_online_cpu(cpu) @@ -417,9 +415,6 @@ static int __init check_unaligned_access_all_cpus(void) NULL, "vec_check_unaligned_access_speed_all_cpus"); } - if (!all_cpus_emulated) - return check_unaligned_access_speed_all_cpus(); - return 0; }
The return value of check_unaligned_access_speed_all_cpus() is always zero, so make the function void so we don't need to concern ourselves with it. The change also allows us to tidy up check_unaligned_access_all_cpus() a bit. Signed-off-by: Andrew Jones <ajones@ventanamicro.com> --- arch/riscv/kernel/unaligned_access_speed.c | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-)