From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail05.groups.io (mail05.groups.io [45.79.224.7]) by spool.mail.gandi.net (Postfix) with ESMTPS id 80FB6941411 for ; Tue, 6 May 2025 12:49:45 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=b2U7NZNYcwln5xWdoVzo5wqzj3rs3NSjcEd59bsfIrQ=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Resent-Date:Resent-From:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20240830; t=1746535785; v=1; x=1746794983; b=axEXHFrI48AX9R7WCKOSgh1wkot6T+9x1kNkFWzdTzDDWDZcONiUv00Kot0rlVhnxaO97p7R VhQFL7/KhRVBWEuIPacpqsNwv6lKSIgi6uoL9qBUTliljCxg8nbLKi0SBTI3ZgJ6gSFwL4ehdKA RmR/XnwmKEQeKaGUi8BPYwOFnY2hBfMIo1+cGJFGVZlRHQB2KwztiiWehkLlWeay+kHRpCZt6WZ k/bslC3XpBsjXNhdk8Pp7O2FCdV+iGgsg8IlJAdL96jhps1HAWBE7Z9peTeR58uVG7v9cb8QMm1 kw68hGVNdAs8t2Tn+Vh/1UWUygum6Unc0pnNbZGTY26pw== X-Received: by 127.0.0.2 with SMTP id xE3zYY7687511xb9wX4AbvLR; Tue, 06 May 2025 05:49:43 -0700 X-Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.9]) by mx.groups.io with SMTP id smtpd.web11.75317.1746535782984604301 for ; Tue, 06 May 2025 05:49:43 -0700 X-CSE-ConnectionGUID: PSDT0esjT/mYDfUs0eVtIw== X-CSE-MsgGUID: aYHXD5nEQ1Wox29ZiuzpXA== X-IronPort-AV: E=McAfee;i="6700,10204,11425"; a="70704580" X-IronPort-AV: E=Sophos;i="6.15,266,1739865600"; d="scan'208";a="70704580" X-Received: from orviesa004.jf.intel.com ([10.64.159.144]) by orvoesa101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 06 May 2025 05:49:43 -0700 X-CSE-ConnectionGUID: auVs3FdAS4Gg6crkpF/EjQ== X-CSE-MsgGUID: Vn2Fw6HBSgGhX56YoYbdxw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.15,266,1739865600"; d="scan'208";a="140557723" X-Received: from shsse002.sh.intel.com ([10.239.132.247]) by orviesa004.jf.intel.com with ESMTP; 06 May 2025 05:49:41 -0700 From: "Zhou Jianfeng via groups.io" To: devel@edk2.groups.io Cc: Zhou Jianfeng , Ray Ni , Gerd Hoffmann , Jiaxin Wu , Zhiguang Liu , Dun Tan , Rahul Kumar , Star Zeng , Liming Gao Subject: [edk2-devel] [PATCH] UefiCpuPkg/PiSmmCpuDxeSmm: Fix SMRAM memory leak during S3 resume Date: Tue, 6 May 2025 08:48:54 -0400 Message-Id: <20250506124854.3342637-1-jianfeng.zhou@intel.com> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Resent-Date: Tue, 06 May 2025 05:49:43 -0700 Resent-From: jianfeng.zhou@intel.com Reply-To: devel@edk2.groups.io,jianfeng.zhou@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: fGmPoVUP7FGSvcLYw54m1PjXx7686176AA= Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240830 header.b=axEXHFrI; dmarc=pass (policy=none) header.from=groups.io; spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 45.79.224.7 as permitted sender) smtp.mailfrom=bounce@groups.io SyncContext of SMM_DISPATCHER_MP_SYNC_DATA was dynamically allocated from SMRAM. The memory was not freed before reallocation in S3 resume path. This could lead to: 1. Memory leak in SMRAM. 2. Potential S3 resume failure after repeated S3 tests due to SMRAM exhaustion. This change releases the SyncContext memory before reallocating it Cc: Ray Ni Cc: Gerd Hoffmann Cc: Jiaxin Wu Cc: Zhiguang Liu Cc: Dun Tan Cc: Rahul Kumar Cc: Star Zeng Cc: Liming Gao Cc: Rahul Kumar Cc: Zhou Jianfeng Signed-off-by: Zhou Jianfeng --- UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c b/UefiCpuPkg/PiSmmCpuDxe= Smm/MpService.c index b19906b610..7bc68087ad 100644 --- a/UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c +++ b/UefiCpuPkg/PiSmmCpuDxeSmm/MpService.c @@ -1868,6 +1868,10 @@ InitializeMpSyncData ( UINTN CpuIndex;=0D =0D if (mSmmMpSyncData !=3D NULL) {=0D + if (mSmmMpSyncData->SyncContext !=3D NULL) {=0D + SmmCpuSyncContextDeinit (mSmmMpSyncData->SyncContext);=0D + }=0D +=0D //=0D // mSmmMpSyncDataSize includes one structure of SMM_DISPATCHER_MP_SYNC= _DATA, one=0D // CpuData array of SMM_CPU_DATA_BLOCK and one CandidateBsp array of B= OOLEAN.=0D @@ -1968,6 +1972,7 @@ InitializeMpServiceData ( mSmmMpSyncData =3D (SMM_DISPATCHER_MP_SYNC_DATA *)AllocatePages (EFI_SIZ= E_TO_PAGES (mSmmMpSyncDataSize));=0D ASSERT (mSmmMpSyncData !=3D NULL);=0D =0D + ZeroMem (mSmmMpSyncData, mSmmMpSyncDataSize);=0D RelaxedMode =3D FALSE;=0D GetSmmCpuSyncConfigData (&RelaxedMode, NULL, NULL);=0D mCpuSmmSyncMode =3D RelaxedMode ? MmCpuSyncModeRelaxedAp : MmCpuSyncMode= Tradition;=0D --=20 2.25.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#121309): https://edk2.groups.io/g/devel/message/121309 Mute This Topic: https://groups.io/mt/112647890/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-