[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[xen staging] misra: add deviations for direct inclusion guards



commit 89719f57cca51f5e4b2c8acddce957ba8248b246
Author:     Simone Ballarin <simone.ballarin@xxxxxxxxxxx>
AuthorDate: Tue Jul 30 11:55:09 2024 +0200
Commit:     Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Tue Jul 30 11:55:09 2024 +0200

    misra: add deviations for direct inclusion guards
    
    Add deviation comments to address violations of
    MISRA C:2012 Directive 4.10 ("Precautions shall be taken in order
    to prevent the contents of a header file being included more than
    once").
    
    Inclusion guards must appear at the beginning of the headers
    (comments are permitted anywhere).
    
    This patch adds deviation comments using the format specified
    in docs/misra/safe.json for headers with just the direct
    inclusion guard before the inclusion guard since they are
    safe and not supposed to comply with the directive.
    
    Note that with SAF-10-safe in place, failures to have proper guards later
    in the header files will not be reported
    
    Signed-off-by: Simone Ballarin <simone.ballarin@xxxxxxxxxxx>
    Signed-off-by: Alessandro Zucchelli <alessandro.zucchelli@xxxxxxxxxxx>
    Signed-off-by: Nicola Vetrini <nicola.vetrini@xxxxxxxxxxx>
    Reviewed-by: Stefano Stabellini <sstabellini@xxxxxxxxxx>
---
 docs/misra/safe.json                 | 8 ++++++++
 xen/arch/arm/include/asm/hypercall.h | 1 +
 xen/arch/x86/include/asm/hypercall.h | 1 +
 3 files changed, 10 insertions(+)

diff --git a/docs/misra/safe.json b/docs/misra/safe.json
index ffa8bfdc4a..684346386e 100644
--- a/docs/misra/safe.json
+++ b/docs/misra/safe.json
@@ -84,6 +84,14 @@
         },
         {
             "id": "SAF-10-safe",
+            "analyser": {
+                "eclair": "MC3R1.D4.10"
+            },
+            "name": "Dir 4.10: direct inclusion guard before",
+            "text": "Headers with just the direct inclusion guard before the 
inclusion guard are safe."
+        },
+        {
+            "id": "SAF-11-safe",
             "analyser": {},
             "name": "Sentinel",
             "text": "Next ID to be used"
diff --git a/xen/arch/arm/include/asm/hypercall.h 
b/xen/arch/arm/include/asm/hypercall.h
index ccd26c5184..07e231f8b5 100644
--- a/xen/arch/arm/include/asm/hypercall.h
+++ b/xen/arch/arm/include/asm/hypercall.h
@@ -1,3 +1,4 @@
+/* SAF-10-safe direct inclusion guard before */
 #ifndef __XEN_HYPERCALL_H__
 #error "asm/hypercall.h should not be included directly - include 
xen/hypercall.h instead"
 #endif
diff --git a/xen/arch/x86/include/asm/hypercall.h 
b/xen/arch/x86/include/asm/hypercall.h
index ec2edc771e..389fa62af2 100644
--- a/xen/arch/x86/include/asm/hypercall.h
+++ b/xen/arch/x86/include/asm/hypercall.h
@@ -2,6 +2,7 @@
  * asm-x86/hypercall.h
  */
 
+/* SAF-10-safe direct inclusion guard before */
 #ifndef __XEN_HYPERCALL_H__
 #error "asm/hypercall.h should not be included directly - include 
xen/hypercall.h instead"
 #endif
--
generated by git-patchbot for /home/xen/git/xen.git#staging



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.