]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
arm64: signal: Fix some under-bracketed UAPI macros
authorDave Martin <Dave.Martin@arm.com>
Mon, 29 Jul 2024 15:20:05 +0000 (16:20 +0100)
committerWill Deacon <will@kernel.org>
Fri, 16 Aug 2024 10:25:45 +0000 (11:25 +0100)
A few SME-related sigcontext UAPI macros leave an argument
unprotected from misparsing during macro expansion.

Add parentheses around references to macro arguments where
appropriate.

Signed-off-by: Dave Martin <Dave.Martin@arm.com>
Fixes: ee072cf70804 ("arm64/sme: Implement signal handling for ZT")
Fixes: 39782210eb7e ("arm64/sme: Implement ZA signal handling")
Reviewed-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20240729152005.289844-1-Dave.Martin@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
arch/arm64/include/uapi/asm/sigcontext.h

index 8a45b7a411e045488c24d24e4d3ef79a1e43a03e..57f76d82077ea5e6dd5e25774db8cfcbda00954d 100644 (file)
@@ -320,10 +320,10 @@ struct zt_context {
        ((sizeof(struct za_context) + (__SVE_VQ_BYTES - 1))     \
                / __SVE_VQ_BYTES * __SVE_VQ_BYTES)
 
-#define ZA_SIG_REGS_SIZE(vq) ((vq * __SVE_VQ_BYTES) * (vq * __SVE_VQ_BYTES))
+#define ZA_SIG_REGS_SIZE(vq) (((vq) * __SVE_VQ_BYTES) * ((vq) * __SVE_VQ_BYTES))
 
 #define ZA_SIG_ZAV_OFFSET(vq, n) (ZA_SIG_REGS_OFFSET + \
-                                 (SVE_SIG_ZREG_SIZE(vq) * n))
+                                 (SVE_SIG_ZREG_SIZE(vq) * (n)))
 
 #define ZA_SIG_CONTEXT_SIZE(vq) \
                (ZA_SIG_REGS_OFFSET + ZA_SIG_REGS_SIZE(vq))
@@ -334,7 +334,7 @@ struct zt_context {
 
 #define ZT_SIG_REGS_OFFSET sizeof(struct zt_context)
 
-#define ZT_SIG_REGS_SIZE(n) (ZT_SIG_REG_BYTES * n)
+#define ZT_SIG_REGS_SIZE(n) (ZT_SIG_REG_BYTES * (n))
 
 #define ZT_SIG_CONTEXT_SIZE(n) \
        (sizeof(struct zt_context) + ZT_SIG_REGS_SIZE(n))