[PATCH v5 0/3] Move duplicated instructions macros into asm/insn.h

Alexandre Ghiti alexghiti at rivosinc.com
Fri Jun 20 13:21:56 PDT 2025


The instructions parsing macros were duplicated and one of them had different
implementations, which is error prone.

So let's consolidate those macros in asm/insn.h.

v1: https://lore.kernel.org/linux-riscv/20250422082545.450453-1-alexghiti@rivosinc.com/
v2: https://lore.kernel.org/linux-riscv/20250508082215.88658-1-alexghiti@rivosinc.com/
v3: https://lore.kernel.org/linux-riscv/20250508125202.108613-1-alexghiti@rivosinc.com/
v4: https://lore.kernel.org/linux-riscv/20250516140805.282770-1-alexghiti@rivosinc.com/

Changes in v5:
- Rebase on top of 6.16-rc1

Changes in v4:
- Rebase on top of for-next (on top of 6.15-rc6)

Changes in v3:
- Fix patch 2 which caused build failures (linux riscv bot), but the
  patchset is exactly the same as v2

Changes in v2:
- Rebase on top of 6.15-rc5
- Add RB tags
- Define RV_X() using RV_X_mask() (Clément)
- Remove unused defines (Clément)
- Fix tabulations (Drew)

Signed-off-by: Alexandre Ghiti <alexghiti at rivosinc.com>
---
Alexandre Ghiti (3):
      riscv: Fix typo EXRACT -> EXTRACT
      riscv: Strengthen duplicate and inconsistent definition of RV_X()
      riscv: Move all duplicate insn parsing macros into asm/insn.h

 arch/riscv/include/asm/insn.h          | 206 +++++++++++++++++++++++++++++----
 arch/riscv/kernel/machine_kexec_file.c |   2 +-
 arch/riscv/kernel/traps_misaligned.c   | 144 +----------------------
 arch/riscv/kernel/vector.c             |   2 +-
 arch/riscv/kvm/vcpu_insn.c             | 128 +-------------------
 5 files changed, 188 insertions(+), 294 deletions(-)
---
base-commit: 731e998c429974cb141a049c1347a9cab444e44c
change-id: 20250620-dev-alex-insn_duplicate_v5_manual-2c23191c30fb

Best regards,
-- 
Alexandre Ghiti <alexghiti at rivosinc.com>




More information about the kvm-riscv mailing list