All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] riscv: hwprobe: require both F and D extensions for RISCV_HWPROBE_IMA_FD
@ 2026-08-16  0:32 ` Ivy Lopez
  0 siblings, 0 replies; 2+ messages in thread
From: Ivy Lopez @ 2026-08-16  0:32 UTC (permalink / raw)
  To: Paul Walmsley, Palmer Dabbelt, Albert Ou
  Cc: Alexandre Ghiti, Andrew Jones, linux-riscv, linux-kernel,
	Ivy Lopez

Documentation/arch/riscv/hwprobe.rst states that RISCV_HWPROBE_IMA_FD
means both the F and D extensions are supported. However, the
implementation uses has_fpu(), which returns true if either extension
is present, since that's sufficient to determine whether FPU state
needs to be saved/restored. Reusing it here silently weakens the
hwprobe semantics from "F and D" to "F or D", giving userspace no way
to know which extension is actually present when only one is.

Check both extensions explicitly with riscv_isa_extension_available(),
matching the pattern already used for the neighboring C and V checks.

Link: https://bugzilla.kernel.org/show_bug.cgi?id=221874
Signed-off-by: Ivy Lopez <skunkolee@gmail.com>
---
 arch/riscv/kernel/sys_hwprobe.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/riscv/kernel/sys_hwprobe.c b/arch/riscv/kernel/sys_hwprobe.c
index 1659d31fd288..7f91beb82a1c 100644
--- a/arch/riscv/kernel/sys_hwprobe.c
+++ b/arch/riscv/kernel/sys_hwprobe.c
@@ -85,7 +85,7 @@ static void hwprobe_isa_ext0(struct riscv_hwprobe *pair,
 	u64 missing = 0;
 
 	pair->value = 0;
-	if (has_fpu())
+	if (riscv_isa_extension_available(NULL, f) && riscv_isa_extension_available(NULL, d))
 		pair->value |= RISCV_HWPROBE_IMA_FD;
 
 	if (riscv_isa_extension_available(NULL, c))
-- 
2.55.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2026-08-16  0:33 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-16  0:32 [PATCH] riscv: hwprobe: require both F and D extensions for RISCV_HWPROBE_IMA_FD Ivy Lopez
2026-08-16  0:32 ` Ivy Lopez

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.