From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 2BE08780091 for ; Mon, 18 Mar 2024 02:20:20 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=AStLB+dYNiwuM9JLceaWD+Db7/gw97CzPWAZuNvc9OE=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Resent-Date:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20240206; t=1710728418; v=1; b=PQJedH3U+VuCdfFKu0KoovovGjaKe4/eSWFksb7JO9JNahGqI6bWjJkwCFG9rKZ/Uh6ka9hP 6WkIozr7x5XZWynkcS3f8ZxTd7JGGIImADe+oz694P+uHUtqZw5wmf4f0WnOW5nIqc1QR4AZKHp d7ZrN/9lxJN0UYQI9BquI6v5FZDYpP1C+cLGpbVE3jgNcj1LK+jY7KMfaZdIIz5kf8NKRzCj41M IlEMEVk8UZXr4r/3HIEepkhuY64+TaDbVatokyVk5+B8lhGbrSJI+jyVkbG0i6axKzls9ItLb9/ 2ZpdVENKf5GBwxbxf/lD0JNxalbShNyv0QIvQzPvgfzxg== X-Received: by 127.0.0.2 with SMTP id QIJ7YY7687511xwIwAsvAt8k; Sun, 17 Mar 2024 19:20:18 -0700 X-Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.18]) by mx.groups.io with SMTP id smtpd.web11.34038.1710728416304381805 for ; Sun, 17 Mar 2024 19:20:18 -0700 X-IronPort-AV: E=McAfee;i="6600,9927,11016"; a="5363095" X-IronPort-AV: E=Sophos;i="6.07,133,1708416000"; d="scan'208";a="5363095" X-Received: from orviesa009.jf.intel.com ([10.64.159.149]) by fmvoesa112.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Mar 2024 19:20:18 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.07,133,1708416000"; d="scan'208";a="13356205" X-Received: from shwdesfp01.ccr.corp.intel.com ([10.239.158.151]) by orviesa009-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 17 Mar 2024 19:20:15 -0700 From: "Zhiguang Liu" To: devel@edk2.groups.io Cc: Zhiguang Liu , Liming Gao , Jiaxin Wu , Ray Ni , Laszlo Ersek , Ard Biesheuvel , Sami Mujawar Subject: [edk2-devel] [PATCH 1/6] Revert 2ec8f0c6407f062441b205b900038933865c7b3c Date: Mon, 18 Mar 2024 10:19:51 +0800 Message-Id: <20240318021956.2787-2-zhiguang.liu@intel.com> In-Reply-To: <20240318021956.2787-1-zhiguang.liu@intel.com> References: <20240318021956.2787-1-zhiguang.liu@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: Sun, 17 Mar 2024 19:20:18 -0700 Reply-To: devel@edk2.groups.io,zhiguang.liu@intel.com List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: nuylINoY4b4aEbaG3Lz9jSrTx7686176AA= Content-Transfer-Encoding: 8bit X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240206 header.b=PQJedH3U; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=intel.com (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io This reverts commit "StandaloneMmPkg: Disallow unregister MMI handler in other MMI handler" for better design later. Cc: Liming Gao Cc: Jiaxin Wu Cc: Ray Ni Cc: Laszlo Ersek Cc: Ray Ni Cc: Laszlo Ersek Cc: Ard Biesheuvel Cc: Sami Mujawar Signed-off-by: Zhiguang Liu --- StandaloneMmPkg/Core/Mmi.c | 32 +++++++++----------------------- 1 file changed, 9 insertions(+), 23 deletions(-) diff --git a/StandaloneMmPkg/Core/Mmi.c b/StandaloneMmPkg/Core/Mmi.c index 9e52072bf7..c1a1d76e85 100644 --- a/StandaloneMmPkg/Core/Mmi.c +++ b/StandaloneMmPkg/Core/Mmi.c @@ -36,9 +36,8 @@ typedef struct { MMI_ENTRY *MmiEntry; } MMI_HANDLER; -LIST_ENTRY mRootMmiHandlerList = INITIALIZE_LIST_HEAD_VARIABLE (mRootMmiHandlerList); -LIST_ENTRY mMmiEntryList = INITIALIZE_LIST_HEAD_VARIABLE (mMmiEntryList); -MMI_HANDLER *mCurrentMmiHandler = NULL; +LIST_ENTRY mRootMmiHandlerList = INITIALIZE_LIST_HEAD_VARIABLE (mRootMmiHandlerList); +LIST_ENTRY mMmiEntryList = INITIALIZE_LIST_HEAD_VARIABLE (mMmiEntryList); /** Finds the MMI entry for the requested handler type. @@ -162,19 +161,13 @@ MmiManage ( // get next node before handler is executed, since LIST_ENTRY that // Link points to may be freed if unregister MMI handler. // - Link = Link->ForwardLink; - // - // Assign gCurrentMmiHandle before calling the MMI handler and - // set to NULL when it returns. - // - mCurrentMmiHandler = MmiHandler; - Status = MmiHandler->Handler ( - (EFI_HANDLE)MmiHandler, - Context, - CommBuffer, - CommBufferSize - ); - mCurrentMmiHandler = NULL; + Link = Link->ForwardLink; + Status = MmiHandler->Handler ( + (EFI_HANDLE)MmiHandler, + Context, + CommBuffer, + CommBufferSize + ); switch (Status) { case EFI_INTERRUPT_PENDING: @@ -321,13 +314,6 @@ MmiHandlerUnRegister ( return EFI_INVALID_PARAMETER; } - // - // Do not allow to unregister MMI Handler inside other MMI Handler - // - if ((mCurrentMmiHandler != NULL) && (mCurrentMmiHandler != MmiHandler)) { - return EFI_INVALID_PARAMETER; - } - MmiEntry = MmiHandler->MmiEntry; RemoveEntryList (&MmiHandler->Link); -- 2.31.1.windows.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#116827): https://edk2.groups.io/g/devel/message/116827 Mute This Topic: https://groups.io/mt/104996180/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-