From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mx1.redhat.com (mx1.redhat.com [209.132.183.28]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 7A8A081F67 for ; Tue, 31 Jan 2017 03:02:27 -0800 (PST) Received: from int-mx14.intmail.prod.int.phx2.redhat.com (int-mx14.intmail.prod.int.phx2.redhat.com [10.5.11.27]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.redhat.com (Postfix) with ESMTPS id 011898124D; Tue, 31 Jan 2017 11:02:28 +0000 (UTC) Received: from lacos-laptop-7.usersys.redhat.com (ovpn-116-112.phx2.redhat.com [10.3.116.112]) by int-mx14.intmail.prod.int.phx2.redhat.com (8.14.4/8.14.4) with ESMTP id v0VB2QBk023741; Tue, 31 Jan 2017 06:02:27 -0500 From: Laszlo Ersek To: edk2-devel-01 Cc: Jordan Justen Date: Tue, 31 Jan 2017 12:02:19 +0100 Message-Id: <20170131110221.25860-1-lersek@redhat.com> X-Scanned-By: MIMEDefang 2.68 on 10.5.11.27 X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.25]); Tue, 31 Jan 2017 11:02:28 +0000 (UTC) Subject: [PATCH v3 0/2] OvmfPkg: broadcast SMIs and dynamically revert to traditional AP sync mode X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 31 Jan 2017 11:02:27 -0000 Previous version (v2): . In this version (again), OVMF negotiates the broadcast SMI feature with QEMU dynamically. If the feature is available, OVMF selects it, and also re-sets the UefiCpuPkg PCDs that are related to BSP-AP synchronization to their "UefiCpuPkg.dec" defaults. The difference relative to v2 is that for the SMI features, QEMU gained a dedicated fw_cfg-based negotiation interface, replacing the previously proposed (somewhat ad-hoc) ICH9_APM_STS-based interface. The QEMU commits implementing and documenting the new interface are listed in patch #2. (But, I also commented patch #2 heavily.) Patch for patch: - v2 1/4 was committed separately (b43dd22981b7, "UefiCpuPkg/PiSmmCpuDxeSmm: dynamic PcdCpuSmmApSyncTimeout, PcdCpuSmmSyncMode", 2016-11-17), - v2 2/4 is now carried forward without changes, as patch #1 (I've picked up Jordan's R-b), - the rest of v2 is replaced with patch #2. I formatted this series with 7 lines of context, to make it an easier read. Repo: https://github.com/lersek/edk2/ Branch: broadcast_smi_v3 Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=230 Cc: Jordan Justen Thanks, Laszlo Laszlo Ersek (2): OvmfPkg: dynamic defaults for PcdCpuSmmApSyncTimeout, PcdCpuSmmSyncMode OvmfPkg/SmmControl2Dxe: select broadcast SMI if available OvmfPkg/OvmfPkgIa32.dsc | 7 +- OvmfPkg/OvmfPkgIa32X64.dsc | 7 +- OvmfPkg/OvmfPkgX64.dsc | 7 +- OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.inf | 8 + OvmfPkg/SmmControl2Dxe/SmiFeatures.h | 49 +++ OvmfPkg/SmmControl2Dxe/SmiFeatures.c | 324 ++++++++++++++++++++ OvmfPkg/SmmControl2Dxe/SmmControl2Dxe.c | 21 ++ 7 files changed, 417 insertions(+), 6 deletions(-) create mode 100644 OvmfPkg/SmmControl2Dxe/SmiFeatures.h create mode 100644 OvmfPkg/SmmControl2Dxe/SmiFeatures.c -- 2.9.3