From: Simone Ballarin <simone.ballarin@bugseng.com>
To: Stefano Stabellini <sstabellini@kernel.org>
Cc: xen-devel@lists.xenproject.org, consulting@bugseng.com,
"Jan Beulich" <jbeulich@suse.com>,
"Andrew Cooper" <andrew.cooper3@citrix.com>,
"Roger Pau Monné" <roger.pau@citrix.com>, "Wei Liu" <wl@xen.org>
Subject: Re: [XEN PATCH 07/13] x86/asm: address violations of MISRA C:2012 Directive 4.10
Date: Wed, 30 Aug 2023 17:23:43 +0200 [thread overview]
Message-ID: <acbb4816-139d-ebcc-1a86-e38ab7ba9c1f@bugseng.com> (raw)
In-Reply-To: <alpine.DEB.2.22.394.2308281529400.6458@ubuntu-linux-20-04-desktop>
On 29/08/23 00:30, Stefano Stabellini wrote:
> On Mon, 28 Aug 2023, Simone Ballarin wrote:
>> Add or move 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).
>>
>> The text of the beggining comment of cpufeatures.h has been changed
>> to match the deviation in automation/eclair_analysis/ECLAIR/deviations.ecl,
>> moreover this new formulation is already used in other files.
>
> I don't think it is a good idea to do this kind of textual matching.
> Instead we should use the format introduced by safe.json, e.g.
> SAF-1-safe
>
I agree. I will use a comment-based deviation.
>
>> Mechanical change.
>>
>> Signed-off-by: Simone Ballarin <simone.ballarin@bugseng.com>
>> ---
>> xen/arch/x86/include/asm/compat.h | 5 +++++
>> xen/arch/x86/include/asm/cpufeatures.h | 4 +---
>> xen/arch/x86/include/asm/efibind.h | 5 +++++
>> xen/arch/x86/include/asm/hypercall.h | 6 +++---
>> 4 files changed, 14 insertions(+), 6 deletions(-)
>>
>> diff --git a/xen/arch/x86/include/asm/compat.h b/xen/arch/x86/include/asm/compat.h
>> index 818cad87db..3d3891d061 100644
>> --- a/xen/arch/x86/include/asm/compat.h
>> +++ b/xen/arch/x86/include/asm/compat.h
>> @@ -2,6 +2,9 @@
>> * compat.h
>> */
>>
>> +#ifndef __ASM_X86_COMPAT_H__
>> +#define __ASM_X86_COMPAT_H__
>> +
>> #ifdef CONFIG_COMPAT
>>
>> #define COMPAT_BITS_PER_LONG 32
>> @@ -18,3 +21,5 @@ int switch_compat(struct domain *);
>> #include <xen/errno.h>
>> static inline int switch_compat(struct domain *d) { return -EOPNOTSUPP; }
>> #endif
>> +
>> +#endif /* __ASM_X86_COMPAT_H__ */
>> diff --git a/xen/arch/x86/include/asm/cpufeatures.h b/xen/arch/x86/include/asm/cpufeatures.h
>> index da0593de85..1dfdd478ab 100644
>> --- a/xen/arch/x86/include/asm/cpufeatures.h
>> +++ b/xen/arch/x86/include/asm/cpufeatures.h
>> @@ -1,6 +1,4 @@
>> -/*
>> - * Explicitly intended for multiple inclusion.
>> - */
>> +/* This file is legitimately included multiple times */
>>
>> #include <xen/lib/x86/cpuid-autogen.h>
>>
>> diff --git a/xen/arch/x86/include/asm/efibind.h b/xen/arch/x86/include/asm/efibind.h
>> index bce02f3707..f2eb8b5496 100644
>> --- a/xen/arch/x86/include/asm/efibind.h
>> +++ b/xen/arch/x86/include/asm/efibind.h
>> @@ -1,2 +1,7 @@
>> +#ifndef __ASM_X86_EFIBIND_H__
>> +#define __ASM_X86_EFIBIND_H__
>> +
>> #include <xen/types.h>
>> #include <asm/x86_64/efibind.h>
>> +
>> +#endif /* __ASM_X86_EFIBIND_H__ */
>> diff --git a/xen/arch/x86/include/asm/hypercall.h b/xen/arch/x86/include/asm/hypercall.h
>> index ec2edc771e..2ade5d71b8 100644
>> --- a/xen/arch/x86/include/asm/hypercall.h
>> +++ b/xen/arch/x86/include/asm/hypercall.h
>> @@ -2,13 +2,13 @@
>> * asm-x86/hypercall.h
>> */
>>
>> +#ifndef __ASM_X86_HYPERCALL_H__
>> +#define __ASM_X86_HYPERCALL_H__
>> +
>> #ifndef __XEN_HYPERCALL_H__
>> #error "asm/hypercall.h should not be included directly - include xen/hypercall.h instead"
>> #endif
>>
>> -#ifndef __ASM_X86_HYPERCALL_H__
>> -#define __ASM_X86_HYPERCALL_H__
>> -
>> #include <xen/types.h>
>> #include <public/physdev.h>
>> #include <public/event_channel.h>
>> --
>> 2.34.1
>>
--
Simone Ballarin, M.Sc.
Field Application Engineer, BUGSENG (https://bugseng.com)
next prev parent reply other threads:[~2023-08-30 15:24 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-28 13:19 [XEN PATCH 00/13] address violations of MISRA C:2012 Directive 4.10 Simone Ballarin
2023-08-28 13:19 ` [XEN PATCH 01/13] misra: add deviation for headers that explicitly avoid guards Simone Ballarin
2023-08-28 21:59 ` Stefano Stabellini
2023-08-28 22:32 ` Stefano Stabellini
2023-08-30 8:47 ` Simone Ballarin
2023-08-29 6:33 ` Jan Beulich
2023-08-30 8:46 ` Simone Ballarin
2023-08-28 13:19 ` [XEN PATCH 02/13] automation/eclair: add text-based deviation for empty headers Simone Ballarin
2023-08-28 22:00 ` Stefano Stabellini
2023-08-30 10:25 ` Simone Ballarin
2023-08-29 6:35 ` Jan Beulich
2023-08-30 11:27 ` Simone Ballarin
2023-08-28 13:20 ` [XEN PATCH 03/13] xen/arm: address violations of MISRA C:2012 Directive 4.10 Simone Ballarin
2023-08-28 22:02 ` Stefano Stabellini
2023-08-28 22:10 ` Julien Grall
2023-08-30 12:53 ` Simone Ballarin
2023-08-30 13:01 ` Jan Beulich
2023-08-30 13:06 ` Simone Ballarin
2023-08-28 13:20 ` [XEN PATCH 04/13] xen/x86: " Simone Ballarin
2023-08-28 22:11 ` Stefano Stabellini
2023-08-29 13:21 ` Jan Beulich
2023-08-28 13:20 ` [XEN PATCH 05/13] automation/eclair: add deviation for usercopy.c Simone Ballarin
2023-08-28 22:27 ` Stefano Stabellini
2023-08-29 6:41 ` Jan Beulich
2023-08-30 14:47 ` Simone Ballarin
2023-08-31 1:56 ` Stefano Stabellini
2023-08-31 9:24 ` Jan Beulich
2023-09-04 12:43 ` Luca Fancellu
2023-08-28 13:20 ` [XEN PATCH 06/13] x86/EFI: address violations of MISRA C:2012 Directive 4.10 Simone Ballarin
2023-08-28 22:28 ` Stefano Stabellini
2023-08-29 13:27 ` Jan Beulich
2023-08-30 15:16 ` Simone Ballarin
2023-08-28 13:20 ` [XEN PATCH 07/13] x86/asm: " Simone Ballarin
2023-08-28 22:30 ` Stefano Stabellini
2023-08-30 15:23 ` Simone Ballarin [this message]
2023-08-29 6:44 ` Jan Beulich
2023-08-28 13:20 ` [XEN PATCH 08/13] x86/mm: " Simone Ballarin
2023-08-28 22:35 ` Stefano Stabellini
2023-08-28 13:20 ` [XEN PATCH 09/13] xen/common: " Simone Ballarin
2023-08-28 22:41 ` Stefano Stabellini
2023-08-29 6:50 ` Jan Beulich
2023-08-31 10:08 ` Simone Ballarin
2023-08-31 11:10 ` Jan Beulich
2023-08-31 12:54 ` Simone Ballarin
2023-08-31 13:05 ` Jan Beulich
2023-08-31 13:30 ` Simone Ballarin
2023-09-05 22:18 ` Stefano Stabellini
2023-09-06 6:28 ` Jan Beulich
2023-09-06 7:35 ` Simone Ballarin
2023-08-28 13:20 ` [XEN PATCH 10/13] xen/efi: " Simone Ballarin
2023-08-28 22:42 ` Stefano Stabellini
2023-08-29 6:47 ` Jan Beulich
2023-08-28 13:20 ` [XEN PATCH 11/13] xen/sched: " Simone Ballarin
2023-08-28 22:43 ` Stefano Stabellini
2023-08-30 14:54 ` George Dunlap
2023-08-28 13:20 ` [XEN PATCH 12/13] xen: " Simone Ballarin
2023-08-28 22:51 ` Stefano Stabellini
2023-08-31 12:18 ` Simone Ballarin
2023-08-31 12:25 ` Jan Beulich
2023-09-05 22:27 ` Stefano Stabellini
2023-09-06 6:32 ` Jan Beulich
2023-09-07 1:12 ` Stefano Stabellini
2023-08-29 6:54 ` Jan Beulich
2023-08-28 13:20 ` [XEN PATCH 13/13] x86/asm: " Simone Ballarin
2023-08-28 22:45 ` Stefano Stabellini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=acbb4816-139d-ebcc-1a86-e38ab7ba9c1f@bugseng.com \
--to=simone.ballarin@bugseng.com \
--cc=andrew.cooper3@citrix.com \
--cc=consulting@bugseng.com \
--cc=jbeulich@suse.com \
--cc=roger.pau@citrix.com \
--cc=sstabellini@kernel.org \
--cc=wl@xen.org \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.