From patchwork Tue Aug 1 08:32:53 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Li, Xin3" X-Patchwork-Id: 129172 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:918b:0:b0:3e4:2afc:c1 with SMTP id s11csp2581860vqg; Tue, 1 Aug 2023 03:50:02 -0700 (PDT) X-Google-Smtp-Source: APBJJlGu8Gu/2IhZZg9FIZLaZcTmJIR26UfoycVk5RIcInjbVLHsnuOnp9VtJL99JeScNFEfPToE X-Received: by 2002:a05:6a21:32a4:b0:134:76d6:7f7 with SMTP id yt36-20020a056a2132a400b0013476d607f7mr12631921pzb.4.1690887002012; Tue, 01 Aug 2023 03:50:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1690887001; cv=none; d=google.com; s=arc-20160816; b=uH4M+LPtsthSK319jvYiCZUaWM9kpwpiwCZKRw0vjkbRdtGNi3V5VNtmto+aa434Ei EkrW4CYzNVcLQ1kFNF8ZJ7G9vcjEK+b6HgYYX6CyR3pSc/7idxmQqAjt+dGTKq3Lai0F TlUSr+bZR33HsGhvGSkfCEROnas0I3wbn8DUNG0paCp7xHVoEbL+VNJVHai9M0AE5rBA 7JwfV47r9njN5Pa16ermcgLF/GxJ9nFxIap3a/K7Nadhk3sVGzCJSbZZwfhsCrMEzNuB h2ieCjGGIE0P4WVahm3qGkWiCXVQ+ziFCTmB3CaMpuirTGI2iAA+IubRlKRC8gaUpllj 4o9Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=MwEkj+bAVf3v1Qm/y/Xey2p8XyHQ2/ZYpUkFxVu1Tk0=; fh=nYO9ukkM7JnAAJZcChGC8UWBlCLXeJxIDT82cxoIaf0=; b=O/BLNq0nwWY859YYWIlda7YyUh/gUzxK8rG2mipZZASsbdhwVA+lXqFbqdb8+8BfOE yM27wZx+bArhrtRzgJPd+Se3cujQgrsvPGOcKxKVk9MlICkuQ/tAcNdRKtwxUmCes1ui kPxnGvzr40zwbKPm06KHDEFzbvq7wDkiGADzkcOdiJST5ocN8J+H7FVcTZWCIdfCksfo fQRGbRVci3bfDjsXzg6xjAxWDqCbSe9v2ZtMHDLaUGq1OEPRZ0fiIULK2tmKuf34J38N pMamxIVztUNJMt3y4CjB17RQzLFbVK3CQIGyWL6JHVHvhg5LkFTR89rerVZaIkf1tooZ 0Zxg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=cTbAgwBN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id n39-20020a056a000d6700b0068753013eddsi1072546pfv.216.2023.08.01.03.49.49; Tue, 01 Aug 2023 03:50:01 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=cTbAgwBN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232507AbjHAJEG (ORCPT + 99 others); Tue, 1 Aug 2023 05:04:06 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:60534 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232676AbjHAJDN (ORCPT ); Tue, 1 Aug 2023 05:03:13 -0400 Received: from mgamail.intel.com (unknown [134.134.136.31]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E7163E48; Tue, 1 Aug 2023 02:02:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1690880563; x=1722416563; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=+L7aUhS6u+4qwVp6754zs3SWJDqRpOJYTCoF5qb+V6E=; b=cTbAgwBNdKeR0LPXxEH2LlNycD+d4IuUrIFTyGirgTO5x/38wUt898UT 5lhE3MVBzM0sY9ZDlrV6135xc8SzWa3nJiRDsC3mfmS1KElnMW3wyhp+j As8THKn05f/BmZ2HO3epKT/Qf6v1O84qJnev5WNJl0/V8juZwy4X2Tq/J Su9aIv/1Qa4cS0v/VqhbLCvyH+rkbo59tQq6GGsGire3HDnUcIxTBLWVl C8rBCYNcDEvqmomx2HqUy0aEgBkynXyE/BVaKBJ9jBSeHDVwMt5hIlFU8 +vbuhaFHwBYLNEmyFjZeUbzdCxYlwJzbcxW48/sAcFKSGMOIvgOtydBD8 Q==; X-IronPort-AV: E=McAfee;i="6600,9927,10788"; a="433082398" X-IronPort-AV: E=Sophos;i="6.01,246,1684825200"; d="scan'208";a="433082398" Received: from fmsmga006.fm.intel.com ([10.253.24.20]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 01 Aug 2023 02:02:01 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10788"; a="975217010" X-IronPort-AV: E=Sophos;i="6.01,246,1684825200"; d="scan'208";a="975217010" Received: from unknown (HELO fred..) ([172.25.112.68]) by fmsmga006.fm.intel.com with ESMTP; 01 Aug 2023 02:02:00 -0700 From: Xin Li To: linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-edac@vger.kernel.org, linux-hyperv@vger.kernel.org, kvm@vger.kernel.org, xen-devel@lists.xenproject.org Cc: Jonathan Corbet , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , x86@kernel.org, "H . Peter Anvin" , Andy Lutomirski , Oleg Nesterov , Tony Luck , "K . Y . Srinivasan" , Haiyang Zhang , Wei Liu , Dexuan Cui , Paolo Bonzini , Wanpeng Li , Vitaly Kuznetsov , Sean Christopherson , Peter Zijlstra , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko , Josh Poimboeuf , "Paul E . McKenney" , Catalin Marinas , Randy Dunlap , Steven Rostedt , Kim Phillips , Xin Li , Hyeonggon Yoo <42.hyeyoo@gmail.com>, "Liam R . Howlett" , Sebastian Reichel , "Kirill A . Shutemov" , Suren Baghdasaryan , Pawan Gupta , Babu Moger , Jim Mattson , Sandipan Das , Lai Jiangshan , Hans de Goede , Reinette Chatre , Daniel Sneddon , Breno Leitao , Nikunj A Dadhania , Brian Gerst , Sami Tolvanen , Alexander Potapenko , Andrew Morton , Arnd Bergmann , "Eric W . Biederman" , Kees Cook , Masami Hiramatsu , Masahiro Yamada , Ze Gao , Fei Li , Conghui , Ashok Raj , "Jason A . Donenfeld" , Mark Rutland , Jacob Pan , Jiapeng Chong , Jane Malalane , David Woodhouse , Boris Ostrovsky , Arnaldo Carvalho de Melo , Yantengsi , Christophe Leroy , Sathvika Vasireddy Subject: [PATCH RESEND v9 11/36] x86/fred: Reserve space for the FRED stack frame Date: Tue, 1 Aug 2023 01:32:53 -0700 Message-Id: <20230801083318.8363-12-xin3.li@intel.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20230801083318.8363-1-xin3.li@intel.com> References: <20230801083318.8363-1-xin3.li@intel.com> MIME-Version: 1.0 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1773023528732335081 X-GMAIL-MSGID: 1773023528732335081 From: "H. Peter Anvin (Intel)" When using FRED, reserve space at the top of the stack frame, just like i386 does. Signed-off-by: H. Peter Anvin (Intel) Tested-by: Shan Kang Signed-off-by: Xin Li --- arch/x86/include/asm/thread_info.h | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/arch/x86/include/asm/thread_info.h b/arch/x86/include/asm/thread_info.h index d63b02940747..089cab875cba 100644 --- a/arch/x86/include/asm/thread_info.h +++ b/arch/x86/include/asm/thread_info.h @@ -31,7 +31,9 @@ * In vm86 mode, the hardware frame is much longer still, so add 16 * bytes to make room for the real-mode segments. * - * x86_64 has a fixed-length stack frame. + * x86-64 has a fixed-length stack frame, but it depends on whether + * or not FRED is enabled. Future versions of FRED might make this + * dynamic, but for now it is always 2 words longer. */ #ifdef CONFIG_X86_32 # ifdef CONFIG_VM86 @@ -39,8 +41,12 @@ # else # define TOP_OF_KERNEL_STACK_PADDING 8 # endif -#else -# define TOP_OF_KERNEL_STACK_PADDING 0 +#else /* x86-64 */ +# ifdef CONFIG_X86_FRED +# define TOP_OF_KERNEL_STACK_PADDING (2*8) +# else +# define TOP_OF_KERNEL_STACK_PADDING 0 +# endif #endif /*