Message ID | f9ea805110ccfecade0c9e617b52b033043f0166.1701248609.git.nicola.vetrini@bugseng.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [XEN,v6] arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1 | expand |
Hi Nicola, On 29/11/2023 10:32, Nicola Vetrini wrote: > The definitions of ffs{l}? violate Rule 10.1, by using the well-known > pattern (x & -x); its usage is wrapped by the ISOLATE_LSB macro. > > No functional change. > > Signed-off-by: Nicola Vetrini <nicola.vetrini@bugseng.com> > Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> This is now committed. Cheers,
diff --git a/xen/arch/arm/include/asm/bitops.h b/xen/arch/arm/include/asm/bitops.h index 71ae14cab355..ab030b6cb032 100644 --- a/xen/arch/arm/include/asm/bitops.h +++ b/xen/arch/arm/include/asm/bitops.h @@ -9,6 +9,8 @@ #ifndef _ARM_BITOPS_H #define _ARM_BITOPS_H +#include <xen/macros.h> + #include <asm/asm_defns.h> /* @@ -155,8 +157,8 @@ static inline int fls(unsigned int x) } -#define ffs(x) ({ unsigned int __t = (x); fls(__t & -__t); }) -#define ffsl(x) ({ unsigned long __t = (x); flsl(__t & -__t); }) +#define ffs(x) ({ unsigned int __t = (x); fls(ISOLATE_LSB(__t)); }) +#define ffsl(x) ({ unsigned long __t = (x); flsl(ISOLATE_LSB(__t)); }) /** * find_first_set_bit - find the first set bit in @word