MISRA C deviations for Xen

The following is the list of MISRA C:2012 deviations for the Xen codebase that are not covered by a SAF-x-safe or SAF-x-false-positive-<tool> comment, as specified in docs/misra/documenting-violations.rst; the lack of such comments is usually due to the excessive clutter they would bring to the codebase or the impossibility to express such a deviation (e.g., if it's composed of several conditions).

1 Deviations related to MISRA C:2012 Directives:

Directive identifier Justification Notes
D4.3 Accepted for the ARM64 codebase Tagged as disapplied for ECLAIR on any other violation report.
D4.3 The inline asm in 'xen/arch/arm/arm64/lib/bitops.c' is tightly coupled with the surronding C code that acts as a wrapper, so it has been decided not to add an additional encapsulation layer. Tagged as deliberate for ECLAIR.
D4.10 Including multiple times a .c file is safe because every function or data item it defines would in (the common case) be already defined. Peer reviewed by the community. Tagged as safe for ECLAIR.

2 Deviations related to MISRA C:2012 Rules:

3 Other deviations:

Deviation Justification
do-while-0 and do-while-1 loops The do-while-0 and do-while-1 loops are well-recognized loop idioms used by the Xen community and can therefore be used, even though they would cause a number of violations in some instances.
while-0 and while-1 loops while-0 and while-1 are well-recognized loop idioms used by the Xen community and can therefore be used, even though they would cause a number of violations in some instances.