[PATCH] RISC-V: fixup ISA string parser merge conflict
Palmer Dabbelt
palmer at dabbelt.com
Thu Jun 22 15:25:53 PDT 2023
On Thu, 22 Jun 2023 15:18:43 PDT (-0700), Conor Dooley wrote:
> From: Conor Dooley <conor.dooley at microchip.com>
>
> Commit 6589450fa2e3 ("Merge patch series "ISA string parser cleanups"")
> has interacted poorly with commit 16252e018a30 ("Merge patch series
> "RISC-V: Export Zba, Zbb to usermode via hwprobe""), as there were some
> semantic conflicts between the former which added more users of the
> "this_isa" bitmap which the latter removed.
>
> Fixes: 6589450fa2e3 ("Merge patch series "ISA string parser cleanups"")
> Signed-off-by: Conor Dooley <conor.dooley at microchip.com>
> ---
> As promised, feel free to squash ;)
Thanks, I will ;)
> ---
> arch/riscv/kernel/cpufeature.c | 10 ++++------
> 1 file changed, 4 insertions(+), 6 deletions(-)
>
> diff --git a/arch/riscv/kernel/cpufeature.c b/arch/riscv/kernel/cpufeature.c
> index 8ecd6f0af213..bdcf460ea53d 100644
> --- a/arch/riscv/kernel/cpufeature.c
> +++ b/arch/riscv/kernel/cpufeature.c
> @@ -131,7 +131,6 @@ void __init riscv_fill_hwcap(void)
> for_each_possible_cpu(cpu) {
> struct riscv_isainfo *isainfo = &hart_isa[cpu];
> unsigned long this_hwcap = 0;
> - DECLARE_BITMAP(this_isa, RISCV_ISA_EXT_MAX);
>
> if (acpi_disabled) {
> node = of_cpu_device_node_get(cpu);
> @@ -162,7 +161,6 @@ void __init riscv_fill_hwcap(void)
> */
> isa += 4;
>
> - bitmap_zero(this_isa, RISCV_ISA_EXT_MAX);
> while (*isa) {
> const char *ext = isa++;
> const char *ext_end = isa;
> @@ -323,8 +321,8 @@ void __init riscv_fill_hwcap(void)
> * Linux requires the following extensions, so we may as well
> * always set them.
> */
> - set_bit(RISCV_ISA_EXT_ZICSR, this_isa);
> - set_bit(RISCV_ISA_EXT_ZIFENCEI, this_isa);
> + set_bit(RISCV_ISA_EXT_ZICSR, isainfo->isa);
> + set_bit(RISCV_ISA_EXT_ZIFENCEI, isainfo->isa);
>
> /*
> * These ones were as they were part of the base ISA when the
> @@ -332,8 +330,8 @@ void __init riscv_fill_hwcap(void)
> * unconditionally where `i` is in riscv,isa on DT systems.
> */
> if (acpi_disabled) {
> - set_bit(RISCV_ISA_EXT_ZICNTR, this_isa);
> - set_bit(RISCV_ISA_EXT_ZIHPM, this_isa);
> + set_bit(RISCV_ISA_EXT_ZICNTR, isainfo->isa);
> + set_bit(RISCV_ISA_EXT_ZIHPM, isainfo->isa);
> }
>
> /*
More information about the linux-riscv
mailing list