From nobody Fri Nov 22 13:41:41 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of lists.xenproject.org designates 192.237.175.120 as permitted sender) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1718121249076673.9789167986505; Tue, 11 Jun 2024 08:54:09 -0700 (PDT) Received: from list by lists.xenproject.org with outflank-mailman.738555.1145365 (Exim 4.92) (envelope-from ) id 1sH3of-0005Ph-GH; Tue, 11 Jun 2024 15:53:45 +0000 Received: by outflank-mailman (output) from mailman id 738555.1145365; Tue, 11 Jun 2024 15:53:45 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1sH3of-0005ML-7k; Tue, 11 Jun 2024 15:53:45 +0000 Received: by outflank-mailman (input) for mailman id 738555; Tue, 11 Jun 2024 15:53:43 +0000 Received: from se1-gles-sth1-in.inumbo.com ([159.253.27.254] helo=se1-gles-sth1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1sH3od-0005DH-87 for xen-devel@lists.xenproject.org; Tue, 11 Jun 2024 15:53:43 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-sth1.inumbo.com (Halon) with ESMTPS id c66ffc9c-280a-11ef-90a3-e314d9c70b13; Tue, 11 Jun 2024 17:53:41 +0200 (CEST) Received: from nico.bugseng.com (unknown [46.228.253.194]) by support.bugseng.com (Postfix) with ESMTPSA id 9693E4EE0757; Tue, 11 Jun 2024 17:53:40 +0200 (CEST) X-Outflank-Mailman: Message body and most headers restored to incoming version X-BeenThere: xen-devel@lists.xenproject.org List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xenproject.org Precedence: list Sender: "Xen-devel" X-Inumbo-ID: c66ffc9c-280a-11ef-90a3-e314d9c70b13 From: Nicola Vetrini To: nicola.vetrini@bugseng.com, xen-devel@lists.xenproject.org Cc: sstabellini@kernel.org, michal.orzel@amd.com, xenia.ragiadakou@amd.com, ayan.kumar.halder@amd.com, consulting@bugseng.com, Simone Ballarin , Doug Goldstein Subject: [XEN PATCH 1/6] automation/eclair: address violations of MISRA C Rule 20.7 Date: Tue, 11 Jun 2024 17:53:31 +0200 Message-Id: <44d392cb30949ed9ddb4551fa7f2a5faa504629f.1718117557.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-ZM-MESSAGEID: 1718121249341100002 Content-Type: text/plain; charset="utf-8" MISRA C Rule 20.7 states: "Expressions resulting from the expansion of macro parameters shall be enclosed in parentheses". The helper macro bitmap_switch has parameters that cannot be parenthesized in order to comply with the rule, as that would break its functionality. Moreover, the risk of misuse due developer confusion is deemed not substantial enough to warrant a more involved refactor, thus the macro is deviated for this rule. No functional change. Signed-off-by: Nicola Vetrini --- automation/eclair_analysis/ECLAIR/deviations.ecl | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/automation/eclair_analysis/ECLAIR/deviations.ecl b/automation/= eclair_analysis/ECLAIR/deviations.ecl index 447c1e6661d1..c2698e7074aa 100644 --- a/automation/eclair_analysis/ECLAIR/deviations.ecl +++ b/automation/eclair_analysis/ECLAIR/deviations.ecl @@ -463,6 +463,14 @@ of this macro do not lead to developer confusion, and = can thus be deviated." -config=3DMC3R1.R20.7,reports+=3D{safe, "any_area(any_loc(any_exp(macro(^c= ount_args_$))))"} -doc_end =20 +-doc_begin=3D"The arguments of macro bitmap_switch macro can't be parenthe= sized as +the rule would require, without breaking the functionality of the macro. T= his is +a specialized local helper macro only used within the bitmap.h header, so = it is +less likely to lead to developer confusion and it is deemed better to devi= ate it." +-file_tag+=3D{xen_bitmap_h, "^xen/include/xen/bitmap\\.h$"} +-config=3DMC3R1.R20.7,reports+=3D{safe, "any_area(any_loc(any_exp(macro(lo= c(file(xen_bitmap_h))&&^bitmap_switch$))))"} +-doc_end + -doc_begin=3D"Uses of variadic macros that have one of their arguments def= ined as a macro and used within the body for both ordinary parameter expansion and= as an operand to the # or ## operators have a behavior that is well-understood a= nd --=20 2.34.1