From patchwork Thu Oct 19 13:40:00 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicola Vetrini X-Patchwork-Id: 13429225 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 95EC4CDB465 for ; Thu, 19 Oct 2023 13:40:33 +0000 (UTC) Received: from list by lists.xenproject.org with outflank-mailman.619341.964260 (Exim 4.92) (envelope-from ) id 1qtTG5-0008W3-Oo; Thu, 19 Oct 2023 13:40:17 +0000 X-Outflank-Mailman: Message body and most headers restored to incoming version Received: by outflank-mailman (output) from mailman id 619341.964260; Thu, 19 Oct 2023 13:40:17 +0000 Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.92) (envelope-from ) id 1qtTG5-0008Vw-M5; Thu, 19 Oct 2023 13:40:17 +0000 Received: by outflank-mailman (input) for mailman id 619341; Thu, 19 Oct 2023 13:40:16 +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 1qtTG4-0008Uq-EP for xen-devel@lists.xenproject.org; Thu, 19 Oct 2023 13:40:16 +0000 Received: from support.bugseng.com (mail.bugseng.com [162.55.131.47]) by se1-gles-flk1.inumbo.com (Halon) with ESMTPS id 08465909-6e85-11ee-9b0e-b553b5be7939; Thu, 19 Oct 2023 15:40:14 +0200 (CEST) Received: from nico.bugseng.com (unknown [147.123.100.131]) by support.bugseng.com (Postfix) with ESMTPSA id 4CE9E4EE0741; Thu, 19 Oct 2023 15:40:13 +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: 08465909-6e85-11ee-9b0e-b553b5be7939 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, jbeulich@suse.com, andrew.cooper3@citrix.com, roger.pau@citrix.com, Nicola Vetrini , Wei Liu Subject: [XEN PATCH][for-4.19 v3 2/8] x86: add deviations for variables only used in asm code Date: Thu, 19 Oct 2023 15:40:00 +0200 Message-Id: <3d4c3f6a1a62acc6c625f32448862a8be47b05aa.1697722648.git.nicola.vetrini@bugseng.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: References: MIME-Version: 1.0 To avoid a violation of MISRA C:2012 Rule 8.4, as permitted by docs/misra/rules.rst. Signed-off-by: Nicola Vetrini Reviewed-by: Stefano Stabellini --- Changes in v3: - Edited commit message - Add two new variables --- xen/arch/x86/include/asm/asm_defns.h | 1 + xen/arch/x86/setup.c | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/xen/arch/x86/include/asm/asm_defns.h b/xen/arch/x86/include/asm/asm_defns.h index baaaccb26e17..a2516de7749b 100644 --- a/xen/arch/x86/include/asm/asm_defns.h +++ b/xen/arch/x86/include/asm/asm_defns.h @@ -31,6 +31,7 @@ asm ( "\t.equ CONFIG_INDIRECT_THUNK, " * gets set up by the containing function. */ #ifdef CONFIG_FRAME_POINTER +/* SAF-1-safe */ register unsigned long current_stack_pointer asm("rsp"); # define ASM_CALL_CONSTRAINT , "+r" (current_stack_pointer) #else diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c index 08ba1f95d635..4480f08de718 100644 --- a/xen/arch/x86/setup.c +++ b/xen/arch/x86/setup.c @@ -75,6 +75,7 @@ static bool __initdata opt_invpcid = true; boolean_param("invpcid", opt_invpcid); bool __read_mostly use_invpcid; +/* SAF-1-safe Only used in asm code and within this source file */ unsigned long __read_mostly cr4_pv32_mask; /* **** Linux config option: propagated to domain0. */ @@ -147,12 +148,13 @@ cpumask_t __read_mostly cpu_present_map; unsigned long __read_mostly xen_phys_start; char __section(".init.bss.stack_aligned") __aligned(STACK_SIZE) - cpu0_stack[STACK_SIZE]; + cpu0_stack[STACK_SIZE]; /* SAF-1-safe Only used in asm code and below */ /* Used by the BSP/AP paths to find the higher half stack mapping to use. */ void *stack_start = cpu0_stack + STACK_SIZE - sizeof(struct cpu_info); /* Used by the boot asm to stash the relocated multiboot info pointer. */ +/* SAF-1-safe */ unsigned int __initdata multiboot_ptr; struct cpuinfo_x86 __read_mostly boot_cpu_data = { 0, 0, 0, 0, -1 };