[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [XEN PATCH 12/13] xen: address violations of MISRA C:2012 Directive 4.10
On Mon, 28 Aug 2023, Simone Ballarin wrote: > Move or amended inclusion guards 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) and the #if directive cannot > be used for other checks. > > Mechanical change. > > Signed-off-by: Simone Ballarin <simone.ballarin@xxxxxxxxxxx> > --- > xen/include/xen/err.h | 4 +++- > xen/include/xen/pci_ids.h | 5 +++++ > xen/include/xen/softirq.h | 4 +++- > xen/include/xen/unaligned.h | 7 ++++--- > xen/include/xen/vmap.h | 4 +++- > 5 files changed, 18 insertions(+), 6 deletions(-) > > diff --git a/xen/include/xen/err.h b/xen/include/xen/err.h > index 2f29b57d28..a6323d82d7 100644 > --- a/xen/include/xen/err.h > +++ b/xen/include/xen/err.h > @@ -1,5 +1,6 @@ > -#if !defined(__XEN_ERR_H__) && !defined(__ASSEMBLY__) > +#if !defined(__XEN_ERR_H__) > #define __XEN_ERR_H__ > +#if !defined(__ASSEMBLY__) The original pattern was also guarding the header file sufficiently, protecting it from double-inclusion. In fact, it is posing stricter restrictions than usual (not laxer). This change is unnecessary? > #include <xen/compiler.h> > #include <xen/errno.h> > @@ -54,4 +55,5 @@ static inline int __must_check PTR_RET(const void *ptr) > return IS_ERR(ptr) ? PTR_ERR(ptr) : 0; > } > > +#endif /* __ASSEMBLY__ */ > #endif /* __XEN_ERR_H__ */ > diff --git a/xen/include/xen/pci_ids.h b/xen/include/xen/pci_ids.h > index e798477a7e..1a739d4c92 100644 > --- a/xen/include/xen/pci_ids.h > +++ b/xen/include/xen/pci_ids.h > @@ -1,3 +1,6 @@ > +#ifndef __XEN_PCI_IDS_H__ > +#define __XEN_PCI_IDS_H__ > + > #define PCI_VENDOR_ID_AMD 0x1022 > > #define PCI_VENDOR_ID_NVIDIA 0x10de > @@ -11,3 +14,5 @@ > #define PCI_VENDOR_ID_BROADCOM 0x14e4 > > #define PCI_VENDOR_ID_INTEL 0x8086 > + > +#endif /* __XEN_PCI_IDS_H__ */ > diff --git a/xen/include/xen/softirq.h b/xen/include/xen/softirq.h > index 33d6f2ecd2..092ec733b7 100644 > --- a/xen/include/xen/softirq.h > +++ b/xen/include/xen/softirq.h > @@ -1,5 +1,6 @@ > -#if !defined(__XEN_SOFTIRQ_H__) && !defined(__ASSEMBLY__) > +#if !defined(__XEN_SOFTIRQ_H__) > #define __XEN_SOFTIRQ_H__ > +#if !defined(__ASSEMBLY__) same here > /* Low-latency softirqs come first in the following list. */ > enum { > @@ -40,4 +41,5 @@ void cpu_raise_softirq_batch_finish(void); > */ > void process_pending_softirqs(void); > > +#endif /* __ASSEMBLY__ */ > #endif /* __XEN_SOFTIRQ_H__ */ > diff --git a/xen/include/xen/unaligned.h b/xen/include/xen/unaligned.h > index 0a2b16d05d..45f03b3f1b 100644 > --- a/xen/include/xen/unaligned.h > +++ b/xen/include/xen/unaligned.h > @@ -3,13 +3,14 @@ > * without faulting, and at least reasonably efficiently. Other > architectures > * will need to have a custom asm/unaligned.h. > */ > -#ifndef __ASM_UNALIGNED_H__ > -#error "xen/unaligned.h should not be included directly - include > asm/unaligned.h instead" > -#endif > > #ifndef __XEN_UNALIGNED_H__ > #define __XEN_UNALIGNED_H__ > > +#ifndef __ASM_UNALIGNED_H__ > +#error "xen/unaligned.h should not be included directly - include > asm/unaligned.h instead" > +#endif > + > #ifdef __XEN__ > #include <xen/types.h> > #include <asm/byteorder.h> > diff --git a/xen/include/xen/vmap.h b/xen/include/xen/vmap.h > index b0f7632e89..7a61dea54a 100644 > --- a/xen/include/xen/vmap.h > +++ b/xen/include/xen/vmap.h > @@ -1,5 +1,6 @@ > -#if !defined(__XEN_VMAP_H__) && defined(VMAP_VIRT_START) > +#if !defined(__XEN_VMAP_H__) > #define __XEN_VMAP_H__ > +#if defined(VMAP_VIRT_START) same here > #include <xen/mm-frame.h> > #include <xen/page-size.h> > @@ -38,4 +39,5 @@ static inline void vm_init(void) > vm_init_type(VMAP_DEFAULT, (void *)VMAP_VIRT_START, > arch_vmap_virt_end()); > } > > +#endif /* VMAP_VIRT_START */ > #endif /* __XEN_VMAP_H__ */ > -- > 2.34.1 >
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |