This series aims to resolve or deviate various violations of Rule 10.1
(operands of inappropriate essential type).
To do so, the widely-used construct
(x & -x), where x is an unsigned integer quantity represented in 2's complement,
does yield the expected result. Since all architectures that are targets for
compliance do fulfill such requirements, the construct is deemed safe and
deviated.
On the contrary, other uses of inappropriate types are changed.
Patches marked with [for-4.19] are not meant to be included in the current
staging, but they can be picked up for 4.18, if deemed risk-free.
Nicola Vetrini (9):
xen/include: add macro LOWEST_POW2
arm/bitops: encapsulate violation of MISRA C:2012 Rule 10.1
xen/pdx: amend definition of PDX_GROUP_COUNT
x86_64/mm: express macro CNT using LOWEST_POW2
x86/cpu-policy: address violations of MISRA C Rule 10.1
x86/io_apic: address violation of MISRA C:2012 Rule 10.1
x86/mce: Move MC_NCLASSES into the enum mctelem_class
xen/types: address Rule 10.1 for DECLARE_BITMAP use
xen/compat: address Rule 10.1 for macros CHECK_SIZE
automation/eclair_analysis/ECLAIR/deviations.ecl | 6 ++++++
xen/arch/arm/include/asm/bitops.h | 6 ++++--
xen/arch/x86/cpu/mcheck/mctelem.c | 2 --
xen/arch/x86/cpu/mcheck/mctelem.h | 5 +++--
xen/arch/x86/include/asm/io_apic.h | 7 ++++---
xen/arch/x86/x86_64/mm.c | 12 ++++++------
xen/include/xen/compat.h | 10 ++++++----
xen/include/xen/iommu.h | 2 +-
xen/include/xen/lib/x86/cpu-policy.h | 13 +++++++------
xen/include/xen/macros.h | 6 ++++--
xen/include/xen/pdx.h | 2 +-
xen/include/xen/types.h | 1 +
12 files changed, 43 insertions(+), 29 deletions(-)
--
2.34.1