[PATCH] riscv: ptrace: avoid BIT() in UAPI header

From: Michael Neuling

Date: Sun Mar 29 2026 - 22:44:10 EST


BIT() is not available in UAPI headers — the installed linux/bits.h
(UAPI version) does not define it. Replace BIT() with open-coded
(1UL << x) which is the standard practice for UAPI headers, and drop
the linux/bits.h include that was added by commit 98545620b0 ("riscv:
ptrace: Fix BIT() compilation issues").

Fixes: 98545620b0 ("riscv: ptrace: Fix BIT() compilation issues")
Signed-off-by: Michael Neuling <mikey@xxxxxxxxxxx>
Assisted-by: Claude Opus 4.6 (1M context) <noreply@xxxxxxxxxxxxx>
---
arch/riscv/include/uapi/asm/ptrace.h | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/arch/riscv/include/uapi/asm/ptrace.h b/arch/riscv/include/uapi/asm/ptrace.h
index 5b53cea143..7cbd558b9b 100644
--- a/arch/riscv/include/uapi/asm/ptrace.h
+++ b/arch/riscv/include/uapi/asm/ptrace.h
@@ -8,7 +8,6 @@

#ifndef __ASSEMBLER__

-#include <linux/bits.h>
#include <linux/types.h>

#define PTRACE_GETFDPIC 33
@@ -139,12 +138,12 @@ struct __sc_riscv_cfi_state {
#define PTRACE_CFI_SS_LOCK_BIT 4
#define PTRACE_CFI_SS_PTR_BIT 5

-#define PTRACE_CFI_LP_EN_STATE BIT(PTRACE_CFI_LP_EN_BIT)
-#define PTRACE_CFI_LP_LOCK_STATE BIT(PTRACE_CFI_LP_LOCK_BIT)
-#define PTRACE_CFI_ELP_STATE BIT(PTRACE_CFI_ELP_BIT)
-#define PTRACE_CFI_SS_EN_STATE BIT(PTRACE_CFI_SS_EN_BIT)
-#define PTRACE_CFI_SS_LOCK_STATE BIT(PTRACE_CFI_SS_LOCK_BIT)
-#define PTRACE_CFI_SS_PTR_STATE BIT(PTRACE_CFI_SS_PTR_BIT)
+#define PTRACE_CFI_LP_EN_STATE (1UL << PTRACE_CFI_LP_EN_BIT)
+#define PTRACE_CFI_LP_LOCK_STATE (1UL << PTRACE_CFI_LP_LOCK_BIT)
+#define PTRACE_CFI_ELP_STATE (1UL << PTRACE_CFI_ELP_BIT)
+#define PTRACE_CFI_SS_EN_STATE (1UL << PTRACE_CFI_SS_EN_BIT)
+#define PTRACE_CFI_SS_LOCK_STATE (1UL << PTRACE_CFI_SS_LOCK_BIT)
+#define PTRACE_CFI_SS_PTR_STATE (1UL << PTRACE_CFI_SS_PTR_BIT)

#define PRACE_CFI_STATE_INVALID_MASK ~(PTRACE_CFI_LP_EN_STATE | \
PTRACE_CFI_LP_LOCK_STATE | \
--
2.43.0