[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH 00/17] xen: address violation of MISRA C:2012 Directive 4.10
The Xen sources contain violations of MISRA C:2012 Directive 4.10 whose headline states: "Precautions shall be taken in order to prevent the contents of a header file being included more than once". Following V2 and V3, here are all the rules that have been applied: - private headers -> <dir>_<filename>_H - asm-generic headers -> ASM_GENERIC_<filename>_H - arch/<architecture>/include/asm/<subdir>/<filename>.h -> ASM_<architecture>_<subdir>_<filename>_H - include/generated/<subdir>/<filename>.h-> GENERATED_<subdir>_<filename>_H - arch/<architecture>/include/generated/asm/<filename>.h-> <arch>_GENERATED_ASM_<name>_H Links to the discussions: https://lists.xenproject.org/archives/html/xen-devel/2023-09/msg01928.html https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg01784.html https://lists.xenproject.org/archives/html/xen-devel/2023-10/msg02073.html Furthermore, the violations arising from the autogenerated header files include/xen/compile.h and xen/hypercall-defs.h are addressed. Patch 17/17 adds a new section for CODING_STYLE with the aforementioned naming conventions. this is just a draft, please give us a feedback on whether something similar may be appreciated. Changes in v4: add/amend inclusion guards to address violations of the Directive and the new naming convention. drop teh XEN_ prefix when needed, according to the feedback received. add inclusion guard naming convention section in CODING_STYLE Changes in v3: Add/amend inclusion guards to address violations of the Directive and the new naming convention. Remove trailing underscores. Modify creation rule for asm-offsets.h to conform to the new standard and to not generate conflicting guards between architectures (which is a violation of the Directive). Alessandro Zucchelli (2): xen/build: address violation of MISRA C Directive 4.10 CODING_STYLE: Add a section on header guards naming conventions Maria Celeste Cesario (3): xen/arm: address violations of MISRA C:2012 Directive 4.10 xen: address violations of MISRA C:2012 Directive 4.10 xen/x86: rename inclusion guards for consistency Nicola Vetrini (2): xen: add deviations for MISRA C 2012 Dir D4.10 xen: add SAF deviation for MISRA C Dir 4.10 Simone Ballarin (10): misra: add deviation for headers that explicitly avoid guards misra: modify deviations for empty and generated headers misra: add deviations for direct inclusion guards xen/arm: address violations of MISRA C:2012 Directive 4.10 xen/x86: address violations of MISRA C:2012 Directive 4.10 x86/EFI: address violations of MISRA C:2012 Directive 4.10 xen/common: address violations of MISRA C:2012 Directive 4.10 xen/efi: address violations of MISRA C:2012 Directive 4.10 xen: address violations of MISRA C:2012 Directive 4.10 x86/asm: address violations of MISRA C:2012 Directive 4.10 CODING_STYLE | 19 +++++++++ .../eclair_analysis/ECLAIR/deviations.ecl | 12 +++--- docs/misra/deviations.rst | 7 ++++ docs/misra/safe.json | 40 +++++++++++++++++++ xen/arch/arm/efi/efi-boot.h | 6 +++ xen/arch/arm/efi/runtime.h | 1 + xen/arch/arm/include/asm/domain.h | 6 +-- xen/arch/arm/include/asm/efibind.h | 5 +++ xen/arch/arm/include/asm/event.h | 6 +-- xen/arch/arm/include/asm/grant_table.h | 6 +-- xen/arch/arm/include/asm/hypercall.h | 1 + xen/arch/arm/include/asm/io.h | 6 +-- xen/arch/arm/include/asm/irq.h | 6 +-- xen/arch/arm/include/asm/smp.h | 6 +-- xen/arch/arm/include/asm/spinlock.h | 6 +-- xen/arch/arm/include/asm/system.h | 6 +-- xen/arch/x86/Makefile | 9 +++-- xen/arch/x86/cpu/cpu.h | 5 +++ xen/arch/x86/efi/efi-boot.h | 7 ++++ xen/arch/x86/efi/runtime.h | 5 +++ xen/arch/x86/include/asm/compat.h | 5 +++ xen/arch/x86/include/asm/cpufeatures.h | 5 +-- xen/arch/x86/include/asm/domain.h | 6 +-- xen/arch/x86/include/asm/efibind.h | 5 +++ xen/arch/x86/include/asm/event.h | 6 +-- xen/arch/x86/include/asm/grant_table.h | 6 +-- xen/arch/x86/include/asm/hypercall.h | 1 + xen/arch/x86/include/asm/io.h | 6 +-- xen/arch/x86/include/asm/irq.h | 6 +-- xen/arch/x86/include/asm/smp.h | 6 +-- xen/arch/x86/include/asm/spinlock.h | 6 +-- xen/arch/x86/include/asm/system.h | 6 +-- xen/arch/x86/x86_64/mmconfig.h | 5 +++ xen/arch/x86/x86_emulate/private.h | 5 +++ xen/build.mk | 13 ++++-- xen/common/decompress.h | 5 +++ xen/common/efi/efi.h | 5 +++ xen/common/event_channel.h | 5 +++ xen/include/Makefile | 18 +++++++-- xen/include/public/arch-x86/cpufeatureset.h | 1 + xen/include/public/arch-x86/xen.h | 1 + xen/include/public/errno.h | 1 + xen/include/xen/err.h | 8 ++-- xen/include/xen/pci_ids.h | 5 +++ xen/include/xen/softirq.h | 8 ++-- xen/include/xen/vmap.h | 8 ++-- xen/scripts/Makefile.asm-generic | 8 +++- 47 files changed, 244 insertions(+), 81 deletions(-) -- 2.34.1
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |