From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga18.intel.com (mga18.intel.com [134.134.136.126]) by mx.groups.io with SMTP id smtpd.web10.13895.1623559015091486323 for ; Sat, 12 Jun 2021 21:36:55 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: intel.com, ip: 134.134.136.126, mailfrom: w.sheng@intel.com) IronPort-SDR: 5nXyxUb1hKLrvsBDvExWOTMTT7IEly4u8k3bgTSymsHA9doZgiJEOnarwF3AS5MmnaEowLFCFw JzRc1Yyzy/2Q== X-IronPort-AV: E=McAfee;i="6200,9189,10013"; a="193007219" X-IronPort-AV: E=Sophos;i="5.83,270,1616482800"; d="scan'208";a="193007219" Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 12 Jun 2021 21:36:53 -0700 IronPort-SDR: nzXEDdVF1OosSbvZge0q1yYLEgz+DddZZhiXdv/f1+pmMthCcXZsuXM+HT2vDKRa4ZG9y3PxgT EVkjzokZ4YQg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,270,1616482800"; d="scan'208";a="487034116" Received: from shwdesssddpdwei.ccr.corp.intel.com ([10.239.157.26]) by fmsmga002.fm.intel.com with ESMTP; 12 Jun 2021 21:36:52 -0700 From: "Sheng Wei" To: devel@edk2.groups.io Cc: Eric Dong , Ray Ni , Laszlo Ersek , Rahul Kumar , Jiewen Yao Subject: [PATCH] UefiCpuPkg/PiSmmCpuDxeSmm: Initialize the fixed previous shadow stack token. Date: Sun, 13 Jun 2021 12:36:38 +0800 Message-Id: <20210613043638.4208-1-w.sheng@intel.com> X-Mailer: git-send-email 2.16.2.windows.1 The fixed previous shadow stack token should be initialized as UINT64. REF: https://bugzilla.tianocore.org/show_bug.cgi?id=3192 Signed-off-by: Sheng Wei Cc: Eric Dong Cc: Ray Ni Cc: Laszlo Ersek Cc: Rahul Kumar Cc: Jiewen Yao --- UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmFuncsArch.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmFuncsArch.c b/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmFuncsArch.c index 661c1ba294..ca3f5ff91a 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmFuncsArch.c +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/X64/SmmFuncsArch.c @@ -202,7 +202,7 @@ InitShadowStack ( // Please refer to UefiCpuPkg/Library/CpuExceptionHandlerLib/X64 for the full stack frame at runtime. // InterruptSsp = (UINT32)((UINTN)ShadowStack + EFI_PAGES_TO_SIZE(1) - sizeof(UINT64)); - *(UINT32 *)(UINTN)InterruptSsp = (InterruptSsp - sizeof(UINT64) * 4) | 0x2; + *(UINT64 *)(UINTN)InterruptSsp = (InterruptSsp - sizeof(UINT64) * 4) | 0x2; mCetInterruptSsp = InterruptSsp - sizeof(UINT64); mCetInterruptSspTable = (UINT32)(UINTN)(mSmmInterruptSspTables + sizeof(UINT64) * 8 * CpuIndex); -- 2.16.2.windows.1