]> www.infradead.org Git - users/jedix/linux-maple.git/commit
riscv: KGDB: Remove ".option norvc/.option rvc" for kgdb_compiled_break
authorWangYuli <wangyuli@uniontech.com>
Fri, 11 Apr 2025 07:32:22 +0000 (15:32 +0800)
committerPalmer Dabbelt <palmer@rivosinc.com>
Wed, 16 Apr 2025 14:29:34 +0000 (07:29 -0700)
commit550c2aa787d1b06efcb11de1877354502a1237f2
tree1c5c503a15755a2297d88316b0fda812d729b057
parent3af4bec9c1db3f003be4d5ae09b6a737e4be1612
riscv: KGDB: Remove ".option norvc/.option rvc" for kgdb_compiled_break

[ Quoting Samuel Holland: ]

  This is a separate issue, but using ".option rvc" here is a bug.
  It will unconditionally enable the C extension for the rest of
  the file, even if the kernel is being built with CONFIG_RISCV_ISA_C=n.

[ Quoting Palmer Dabbelt: ]

  We're just looking at the address of kgdb_compiled_break, so it's
  fine if it ends up as a c.ebreak.

[ Quoting Alexandre Ghiti: ]

  .option norvc is used to prevent the assembler from using compressed
  instructions, but it's generally used when we need to ensure the
  size of the instructions that are used, which is not the case here
  as noted by Palmer since we only care about the address. So yes
  it will work fine with C enabled :)

So let's just remove them all.

Link: https://lore.kernel.org/all/4b4187c1-77e5-44b7-885f-d6826723dd9a@sifive.com/
Link: https://lore.kernel.org/all/mhng-69513841-5068-441d-be8f-2aeebdc56a08@palmer-ri-x1c9a/
Link: https://lore.kernel.org/all/23693e7f-4fff-40f3-a437-e06d827278a5@ghiti.fr/
Fixes: fe89bd2be866 ("riscv: Add KGDB support")
Cc: Samuel Holland <samuel.holland@sifive.com>
Cc: Palmer Dabbelt <palmer@dabbelt.com>
Cc: Alexandre Ghiti <alex@ghiti.fr>
Signed-off-by: WangYuli <wangyuli@uniontech.com>
Link: https://lore.kernel.org/r/8B431C6A4626225C+20250411073222.56820-2-wangyuli@uniontech.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/kernel/kgdb.c