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).
| 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. |
| 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. |