From patchwork Thu Aug 10 08:39:40 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicola Vetrini X-Patchwork-Id: 13349035 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id C784BC001DE for ; Thu, 10 Aug 2023 08:40:22 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.581923.911393 (Exim 4.92) (envelope-from ) id 1qU1DI-0005QS-4p; Thu, 10 Aug 2023 08:40:12 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 581923.911393; Thu, 10 Aug 2023 08:40:12 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qU1DI-0005Q1-1L; Thu, 10 Aug 2023 08:40:12 +0000 Received: by outflank-mailman (input) for mailman id 581923; Thu, 10 Aug 2023 08:40:10 +0000 Received: from se1-gles-flk1-in.inumbo.com ([94.247.172.50] helo=se1-gles-flk1.inumbo.com) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qU1DG-0005Mc-LE for xen-devel@lists.xenproject.org; Thu, 10 Aug 2023 08:40:10 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 7ca5e8bd-3759-11ee-8613-37d641c3527e; Thu, 10 Aug 2023 10:39:58 +0200 (CEST) Received: from nico.bugseng.com (unknown [147.123.100.131]) by support.bugseng.com (Postfix) with ESMTPSA id 030544EE073F; Thu, 10 Aug 2023 10:40:06 +0200 (CEST) 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: 7ca5e8bd-3759-11ee-8613-37d641c3527e From: Nicola Vetrini To: 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, Nicola Vetrini , Andrew Cooper , George Dunlap , Jan Beulich , Julien Grall , Wei Liu , Bertrand Marquis , Volodymyr Babchuk , =?utf-8?q?Roger_Pau_Monn?= =?utf-8?q?=C3=A9?= Subject: [XEN PATCH v2 0/7] fix missing headers and static storage duration Date: Thu, 10 Aug 2023 10:39:40 +0200 Message-Id: X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 The files touched by this series contain function or variable definitions with no prior declaration visible, because it's inside an header that is not included or it's not present anywhere. This is a risk in itself, but also violates MISRA C:2012 Rule 8.4, which states the following: "A compatible declaration shall be visible when an object or function with external linkage is defined". The resolution strategies are as follows: 1. make the functions/variables static 2. include the header that contains the compatible declaration, or add one in the header if that's not the case. No functional change. Additional notes: - other cases, such as functions/variables used only in asm code will be possibly dealt with in future patches. - functions in 'gcov_base.c' are deviated, since they are called only from code generated by gcc in a particular non-release build configuration; - variables in 'xen/include/acpi/acglobal.h' are deviated temporarily, since it's uncertain whether modifying the include pattern to be compliant with the rule would introduce subtle bugs. --- Changes in v2: - Modified commit messages, with additional "Fixed" tags and mention that these are bugfixes - Split patch 4/8 of the previous version - Drop patch 7/8 of the previous version, because it's already addressed by this patch [1] [1] https://lists.xen.org/archives/html/xen-devel/2023-05/msg00896.html Nicola Vetrini (7): xen/memory: make 'ioreq_server_max_frames' static xen: make 'saved_cmdline' static xen/include: make a declaration of 'get_sec' visible where needed xen/arm: make declarations visible before function definitions x86: make some functions and variables static rather than extern xen/arm: mm: add missing extern variable declaration x86/nmi: include missing header with declarations for 'watchdog_*' xen/arch/arm/include/asm/mm.h | 3 +++ xen/arch/arm/setup.c | 1 + xen/arch/arm/time.c | 1 + xen/arch/x86/cpu/mcheck/mce.c | 2 +- xen/arch/x86/cpu/mcheck/mce_amd.c | 2 +- xen/arch/x86/cpu/microcode/core.c | 2 +- xen/arch/x86/nmi.c | 3 ++- xen/arch/x86/spec_ctrl.c | 4 ++-- xen/common/kernel.c | 2 +- xen/common/memory.c | 2 +- xen/include/xen/cper.h | 3 +-- xen/include/xen/time.h | 1 + 12 files changed, 16 insertions(+), 10 deletions(-) -- 2.34.1