From: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
To: Peter Zijlstra <peterz@infradead.org>,
Andy Lutomirski <luto@kernel.org>,
Dave Hansen <dave.hansen@intel.com>,
Dan Williams <dan.j.williams@intel.com>,
Tony Luck <tony.luck@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>,
Kirill Shutemov <kirill.shutemov@linux.intel.com>,
Kuppuswamy Sathyanarayanan <knsathya@kernel.org>,
Raj Ashok <ashok.raj@intel.com>,
Sean Christopherson <seanjc@google.com>,
linux-kernel@vger.kernel.org,
Kuppuswamy Sathyanarayanan
<sathyanarayanan.kuppuswamy@linux.intel.com>,
Sean Christopherson <sean.j.christopherson@intel.com>
Subject: [RFC v2 20/32] x86/acpi, x86/boot: Add multiprocessor wake-up support
Date: Mon, 26 Apr 2021 11:01:47 -0700 [thread overview]
Message-ID: <7668517006b7be1c3558ddde4f43e87b5ce814de.1619458733.git.sathyanarayanan.kuppuswamy@linux.intel.com> (raw)
In-Reply-To: <cover.1619458733.git.sathyanarayanan.kuppuswamy@linux.intel.com>
As per ACPI specification r6.4, sec 5.2.12.19, a new sub
structure – multiprocessor wake-up structure - is added to the
ACPI Multiple APIC Description Table (MADT) to describe the
information of the mailbox. If a platform firmware produces the
multiprocessor wake-up structure, then OS may use this new
mailbox-based mechanism to wake up the APs.
Add ACPI MADT wake table parsing support for x86 platform and if
MADT wake table is present, update apic->wakeup_secondary_cpu with
new API which uses MADT wake mailbox to wake-up CPU.
Co-developed-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com>
Signed-off-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
Reviewed-by: Andi Kleen <ak@linux.intel.com>
---
arch/x86/include/asm/apic.h | 3 ++
arch/x86/kernel/acpi/boot.c | 79 +++++++++++++++++++++++++++++++++++++
arch/x86/kernel/apic/apic.c | 8 ++++
3 files changed, 90 insertions(+)
diff --git a/arch/x86/include/asm/apic.h b/arch/x86/include/asm/apic.h
index 412b51e059c8..3e94e1f402ea 100644
--- a/arch/x86/include/asm/apic.h
+++ b/arch/x86/include/asm/apic.h
@@ -487,6 +487,9 @@ static inline unsigned int read_apic_id(void)
return apic->get_apic_id(reg);
}
+typedef int (*wakeup_cpu_handler)(int apicid, unsigned long start_eip);
+extern void acpi_wake_cpu_handler_update(wakeup_cpu_handler handler);
+
extern int default_apic_id_valid(u32 apicid);
extern int default_acpi_madt_oem_check(char *, char *);
extern void default_setup_apic_routing(void);
diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
index 14cd3186dc77..fce2aa7d718f 100644
--- a/arch/x86/kernel/acpi/boot.c
+++ b/arch/x86/kernel/acpi/boot.c
@@ -65,6 +65,9 @@ int acpi_fix_pin2_polarity __initdata;
static u64 acpi_lapic_addr __initdata = APIC_DEFAULT_PHYS_BASE;
#endif
+static struct acpi_madt_multiproc_wakeup_mailbox *acpi_mp_wake_mailbox;
+static u64 acpi_mp_wake_mailbox_paddr;
+
#ifdef CONFIG_X86_IO_APIC
/*
* Locks related to IOAPIC hotplug
@@ -329,6 +332,52 @@ acpi_parse_lapic_nmi(union acpi_subtable_headers * header, const unsigned long e
return 0;
}
+static void acpi_mp_wake_mailbox_init(void)
+{
+ if (acpi_mp_wake_mailbox)
+ return;
+
+ acpi_mp_wake_mailbox = memremap(acpi_mp_wake_mailbox_paddr,
+ sizeof(*acpi_mp_wake_mailbox), MEMREMAP_WB);
+}
+
+static int acpi_wakeup_cpu(int apicid, unsigned long start_ip)
+{
+ u8 timeout = 0xFF;
+
+ acpi_mp_wake_mailbox_init();
+
+ if (!acpi_mp_wake_mailbox)
+ return -EINVAL;
+
+ /*
+ * Mailbox memory is shared between firmware and OS. Firmware will
+ * listen on mailbox command address, and once it receives the wakeup
+ * command, CPU associated with the given apicid will be booted. So,
+ * the value of apic_id and wakeup_vector has to be set before updating
+ * the wakeup command. So use WRITE_ONCE to let the compiler know about
+ * it and preserve the order of writes.
+ */
+ WRITE_ONCE(acpi_mp_wake_mailbox->apic_id, apicid);
+ WRITE_ONCE(acpi_mp_wake_mailbox->wakeup_vector, start_ip);
+ WRITE_ONCE(acpi_mp_wake_mailbox->command, ACPI_MP_WAKE_COMMAND_WAKEUP);
+
+ /*
+ * After writing wakeup command, wait for maximum timeout of 0xFF
+ * for firmware to reset the command address back zero to indicate
+ * the successful reception of command.
+ * NOTE: 255 as timeout value is decided based on our experiments.
+ *
+ * XXX: Change the timeout once ACPI specification comes up with
+ * standard maximum timeout value.
+ */
+ while (READ_ONCE(acpi_mp_wake_mailbox->command) && timeout--)
+ cpu_relax();
+
+ /* If timedout, return error */
+ return timeout ? 0 : -EIO;
+}
+
#endif /*CONFIG_X86_LOCAL_APIC */
#ifdef CONFIG_X86_IO_APIC
@@ -1086,6 +1135,30 @@ static int __init acpi_parse_madt_lapic_entries(void)
}
return 0;
}
+
+static int __init acpi_parse_mp_wake(union acpi_subtable_headers *header,
+ const unsigned long end)
+{
+ struct acpi_madt_multiproc_wakeup *mp_wake;
+
+ if (acpi_mp_wake_mailbox)
+ return -EINVAL;
+
+ if (!IS_ENABLED(CONFIG_SMP))
+ return -ENODEV;
+
+ mp_wake = (struct acpi_madt_multiproc_wakeup *) header;
+ if (BAD_MADT_ENTRY(mp_wake, end))
+ return -EINVAL;
+
+ acpi_table_print_madt_entry(&header->common);
+
+ acpi_mp_wake_mailbox_paddr = mp_wake->base_address;
+
+ acpi_wake_cpu_handler_update(acpi_wakeup_cpu);
+
+ return 0;
+}
#endif /* CONFIG_X86_LOCAL_APIC */
#ifdef CONFIG_X86_IO_APIC
@@ -1284,6 +1357,12 @@ static void __init acpi_process_madt(void)
smp_found_config = 1;
}
+
+ /*
+ * Parse MADT MP Wake entry.
+ */
+ acpi_table_parse_madt(ACPI_MADT_TYPE_MULTIPROC_WAKEUP,
+ acpi_parse_mp_wake, 1);
}
if (error == -EINVAL) {
/*
diff --git a/arch/x86/kernel/apic/apic.c b/arch/x86/kernel/apic/apic.c
index 4f26700f314d..f1b90a4b89e8 100644
--- a/arch/x86/kernel/apic/apic.c
+++ b/arch/x86/kernel/apic/apic.c
@@ -2554,6 +2554,14 @@ u32 x86_msi_msg_get_destid(struct msi_msg *msg, bool extid)
}
EXPORT_SYMBOL_GPL(x86_msi_msg_get_destid);
+void __init acpi_wake_cpu_handler_update(wakeup_cpu_handler handler)
+{
+ struct apic **drv;
+
+ for (drv = __apicdrivers; drv < __apicdrivers_end; drv++)
+ (*drv)->wakeup_secondary_cpu = handler;
+}
+
/*
* Override the generic EOI implementation with an optimized version.
* Only called during early boot when only one CPU is active and with
--
2.25.1
next prev parent reply other threads:[~2021-04-26 18:04 UTC|newest]
Thread overview: 381+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-26 18:01 [RFC v2 00/32] Add TDX Guest Support Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 01/32] x86/paravirt: Introduce CONFIG_PARAVIRT_XL Kuppuswamy Sathyanarayanan
2021-04-27 17:31 ` Borislav Petkov
2021-05-06 14:59 ` Kirill A. Shutemov
2021-05-10 8:07 ` Juergen Gross
2021-05-10 15:52 ` Andi Kleen
2021-05-10 15:56 ` Juergen Gross
2021-05-12 12:07 ` Kirill A. Shutemov
2021-05-12 13:18 ` Peter Zijlstra
2021-05-12 13:24 ` Andi Kleen
2021-05-12 13:51 ` Juergen Gross
2021-05-17 23:50 ` [RFC v2-fix 1/1] x86/paravirt: Move halt paravirt calls under CONFIG_PARAVIRT Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 02/32] x86/tdx: Introduce INTEL_TDX_GUEST config option Kuppuswamy Sathyanarayanan
2021-04-26 21:09 ` Randy Dunlap
2021-04-26 22:32 ` Kuppuswamy, Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 03/32] x86/cpufeatures: Add TDX Guest CPU feature Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 04/32] x86/x86: Add is_tdx_guest() interface Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 05/32] x86/tdx: Add __tdcall() and __tdvmcall() helper functions Kuppuswamy Sathyanarayanan
2021-04-26 20:32 ` Dave Hansen
2021-04-26 22:31 ` Kuppuswamy, Sathyanarayanan
2021-04-26 23:17 ` Dave Hansen
2021-04-27 2:29 ` Kuppuswamy, Sathyanarayanan
2021-04-27 14:29 ` Dave Hansen
2021-04-27 19:18 ` Kuppuswamy, Sathyanarayanan
2021-04-27 19:20 ` Dave Hansen
2021-04-28 17:42 ` [PATCH v1 1/1] x86/tdx: Add __tdx_module_call() and __tdx_hypercall() " Kuppuswamy Sathyanarayanan
2021-05-19 5:58 ` [RFC v2-fix-v1 " Kuppuswamy Sathyanarayanan
2021-05-19 6:04 ` Kuppuswamy, Sathyanarayanan
2021-05-19 15:31 ` Dave Hansen
2021-05-19 19:09 ` [RFC v2-fix-v2 " Kuppuswamy Sathyanarayanan
2021-05-19 19:13 ` [RFC v2-fix-v1 " Kuppuswamy, Sathyanarayanan
2021-05-19 20:09 ` Sean Christopherson
2021-05-19 20:49 ` Andi Kleen
2021-05-27 0:30 ` [RFC v2-fix-v2 " Kuppuswamy Sathyanarayanan
2021-05-27 15:25 ` Luck, Tony
2021-05-27 15:52 ` Kuppuswamy, Sathyanarayanan
2021-05-27 16:25 ` Luck, Tony
2021-04-26 18:01 ` [RFC v2 06/32] x86/tdx: Get TD execution environment information via TDINFO Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 07/32] x86/traps: Add do_general_protection() helper function Kuppuswamy Sathyanarayanan
2021-05-07 21:20 ` Dave Hansen
2021-04-26 18:01 ` [RFC v2 08/32] x86/traps: Add #VE support for TDX guest Kuppuswamy Sathyanarayanan
2021-05-07 21:36 ` Dave Hansen
2021-05-13 19:47 ` Andi Kleen
2021-05-13 20:07 ` Dave Hansen
2021-05-13 22:43 ` Andi Kleen
2021-05-13 20:14 ` Dave Hansen
2021-05-18 0:09 ` [RFC v2-fix 1/1] " Kuppuswamy Sathyanarayanan
2021-05-18 15:11 ` Dave Hansen
2021-05-18 15:45 ` Andi Kleen
2021-05-18 15:56 ` Dave Hansen
2021-05-18 16:00 ` Andi Kleen
2021-05-21 19:22 ` Dan Williams
2021-05-24 14:02 ` Andi Kleen
2021-05-27 0:29 ` [RFC v2-fix-v2 " Kuppuswamy Sathyanarayanan
2021-05-27 15:11 ` Luck, Tony
2021-05-27 16:24 ` Sean Christopherson
2021-05-27 16:36 ` Dave Hansen
2021-05-21 18:45 ` [RFC v2-fix " Kuppuswamy, Sathyanarayanan
2021-05-21 19:15 ` Dave Hansen
2021-05-21 19:57 ` Kuppuswamy, Sathyanarayanan
2021-06-08 17:02 ` [RFC v2 08/32] " Dave Hansen
2021-06-08 17:48 ` Sean Christopherson
2021-06-08 17:53 ` Dave Hansen
2021-06-08 18:12 ` Andi Kleen
2021-06-08 18:15 ` Dave Hansen
2021-06-08 18:17 ` Andy Lutomirski
2021-06-08 18:18 ` Andi Kleen
2021-04-26 18:01 ` [RFC v2 09/32] x86/tdx: Add HLT " Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 10/32] x86/tdx: Wire up KVM hypercalls Kuppuswamy Sathyanarayanan
2021-05-07 21:46 ` Dave Hansen
2021-05-08 0:59 ` Kuppuswamy, Sathyanarayanan
2021-05-12 13:00 ` Kirill A. Shutemov
2021-05-12 14:10 ` Kuppuswamy, Sathyanarayanan
2021-05-12 14:29 ` Dave Hansen
2021-05-13 19:29 ` Kuppuswamy, Sathyanarayanan
2021-05-13 19:33 ` Dave Hansen
2021-05-18 0:15 ` [RFC v2-fix 1/1] " Kuppuswamy Sathyanarayanan
2021-05-18 15:51 ` Dave Hansen
2021-05-18 16:23 ` Sean Christopherson
2021-05-18 20:12 ` Kuppuswamy, Sathyanarayanan
2021-05-18 20:19 ` Dave Hansen
2021-05-18 20:57 ` Kuppuswamy, Sathyanarayanan
2021-05-18 21:19 ` [RFC v2-fix-v2 " Kuppuswamy Sathyanarayanan
2021-05-18 23:29 ` Dave Hansen
2021-05-19 1:17 ` [RFC v2-fix-v3 " Kuppuswamy Sathyanarayanan
2021-05-19 1:20 ` Sathyanarayanan Kuppuswamy Natarajan
2021-04-26 18:01 ` [RFC v2 11/32] x86/tdx: Add MSR support for TDX guest Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 12/32] x86/tdx: Handle CPUID via #VE Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 13/32] x86/io: Allow to override inX() and outX() implementation Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 14/32] x86/tdx: Handle port I/O Kuppuswamy Sathyanarayanan
2021-05-10 21:57 ` Dan Williams
2021-05-10 23:08 ` Andi Kleen
2021-05-10 23:34 ` Dan Williams
2021-05-11 0:01 ` Andi Kleen
2021-05-11 0:21 ` Dan Williams
2021-05-11 0:30 ` Kuppuswamy, Sathyanarayanan
2021-05-11 1:07 ` Dan Williams
2021-05-11 2:29 ` Kuppuswamy, Sathyanarayanan
2021-05-11 14:39 ` Dave Hansen
2021-05-11 15:08 ` Kuppuswamy, Sathyanarayanan
2021-05-11 0:56 ` Kuppuswamy, Sathyanarayanan
2021-05-11 2:19 ` Andi Kleen
2021-05-11 15:35 ` Dave Hansen
2021-05-11 15:43 ` Dan Williams
2021-05-12 6:17 ` Dan Williams
2021-05-27 4:23 ` [RFC v2-fix-v1 0/3] " Kuppuswamy Sathyanarayanan
2021-05-27 4:23 ` [RFC v2-fix-v1 1/3] tdx: Introduce generic protected_guest abstraction Kuppuswamy Sathyanarayanan
2021-06-01 21:14 ` [RFC v2-fix-v2 1/1] x86: Introduce generic protected guest abstraction Kuppuswamy Sathyanarayanan
2021-06-02 17:20 ` Sean Christopherson
2021-06-02 18:15 ` Tom Lendacky
2021-06-02 18:25 ` Kuppuswamy, Sathyanarayanan
2021-06-02 18:29 ` Borislav Petkov
2021-06-02 18:32 ` Kuppuswamy, Sathyanarayanan
2021-06-02 18:39 ` Borislav Petkov
2021-06-02 18:45 ` Kuppuswamy, Sathyanarayanan
2021-06-02 18:19 ` Tom Lendacky
2021-06-02 18:29 ` Kuppuswamy, Sathyanarayanan
2021-06-02 18:30 ` Borislav Petkov
2021-06-03 18:14 ` Borislav Petkov
2021-06-03 18:15 ` [RFC v2-fix-v2 1/1] x86: Introduce generic protected guest abstractionn Borislav Petkov
2021-06-04 22:01 ` Tom Lendacky
2021-06-04 22:13 ` Kuppuswamy, Sathyanarayanan
2021-06-04 22:15 ` Borislav Petkov
2021-06-04 23:31 ` Tom Lendacky
2021-06-05 11:03 ` Borislav Petkov
2021-06-05 18:12 ` Kuppuswamy, Sathyanarayanan
2021-06-05 20:08 ` Borislav Petkov
2021-06-07 19:55 ` Kirill A. Shutemov
2021-06-07 20:14 ` Borislav Petkov
2021-06-07 22:26 ` Kuppuswamy, Sathyanarayanan
2021-06-08 21:30 ` [RFC v2-fix-v3 1/1] x86: Introduce generic protected guest abstraction Kuppuswamy Sathyanarayanan
2021-06-03 18:33 ` [RFC v2-fix-v2 " Kuppuswamy, Sathyanarayanan
2021-06-03 18:41 ` Borislav Petkov
2021-06-03 18:54 ` Kuppuswamy, Sathyanarayanan
2021-06-07 18:01 ` Kuppuswamy, Sathyanarayanan
2021-06-07 18:26 ` Borislav Petkov
2021-06-09 14:01 ` Kuppuswamy, Sathyanarayanan
2021-06-09 14:32 ` Borislav Petkov
2021-06-09 14:56 ` Kuppuswamy, Sathyanarayanan
2021-06-09 15:01 ` Borislav Petkov
2021-06-09 19:41 ` [RFC v2-fix-v4 " Kuppuswamy Sathyanarayanan
2021-06-09 22:53 ` Sathyanarayanan Kuppuswamy Natarajan
2021-05-27 4:23 ` [RFC v2-fix-v1 2/3] x86/tdx: Handle early IO operations Kuppuswamy Sathyanarayanan
2021-06-05 4:26 ` Williams, Dan J
2021-05-27 4:23 ` [RFC v2-fix-v1 3/3] x86/tdx: Handle port I/O Kuppuswamy Sathyanarayanan
2021-06-05 18:52 ` Dan Williams
2021-06-05 20:08 ` Kuppuswamy, Sathyanarayanan
2021-06-05 21:08 ` Dan Williams
2021-06-07 16:24 ` Kuppuswamy, Sathyanarayanan
2021-06-07 17:17 ` Dan Williams
2021-06-07 21:52 ` Kuppuswamy, Sathyanarayanan
2021-06-07 22:00 ` Dan Williams
2021-06-08 2:57 ` Andi Kleen
2021-06-08 15:40 ` [RFC v2-fix-v2 0/3] " Kuppuswamy Sathyanarayanan
2021-06-08 15:40 ` [RFC v2-fix-v2 1/3] x86/tdx: Handle port I/O in decompression code Kuppuswamy Sathyanarayanan
2021-06-08 23:12 ` Dan Williams
2021-06-08 15:40 ` [RFC v2-fix-v2 2/3] x86/tdx: Handle early IO operations Kuppuswamy Sathyanarayanan
2021-06-08 15:40 ` [RFC v2-fix-v2 3/3] x86/tdx: Handle port I/O Kuppuswamy Sathyanarayanan
2021-06-08 16:26 ` Dan Williams
2021-04-26 18:01 ` [RFC v2 15/32] x86/tdx: Handle in-kernel MMIO Kuppuswamy Sathyanarayanan
2021-05-07 21:52 ` Dave Hansen
2021-05-18 0:48 ` [RFC v2-fix 1/1] " Kuppuswamy Sathyanarayanan
2021-05-18 15:00 ` Dave Hansen
2021-05-18 15:56 ` Andi Kleen
2021-05-18 16:04 ` Dave Hansen
2021-05-18 16:10 ` Andi Kleen
2021-05-18 16:22 ` Dave Hansen
2021-05-18 17:05 ` Andi Kleen
2021-05-18 17:28 ` Andi Kleen
2021-05-18 17:11 ` Sean Christopherson
2021-05-18 17:21 ` Andi Kleen
2021-05-18 17:46 ` Dave Hansen
2021-05-18 18:36 ` Sean Christopherson
2021-05-18 20:20 ` Andi Kleen
2021-05-18 20:40 ` Dave Hansen
2021-05-18 21:05 ` Andi Kleen
2021-05-18 18:22 ` Sean Christopherson
2021-05-18 20:28 ` Andi Kleen
2021-05-18 20:37 ` Sean Christopherson
2021-05-18 20:56 ` Andi Kleen
2021-05-18 16:18 ` Sean Christopherson
2021-05-18 17:15 ` Andi Kleen
2021-05-18 18:17 ` Sean Christopherson
2021-05-20 22:47 ` Kirill A. Shutemov
2021-06-02 19:42 ` [RFC v2-fix-v2 0/2] " Kuppuswamy Sathyanarayanan
2021-06-02 19:42 ` [RFC v2-fix-v2 1/2] x86/sev-es: Abstract out MMIO instruction decoding Kuppuswamy Sathyanarayanan
2021-06-05 21:56 ` Dan Williams
2021-06-08 15:59 ` [RFC v2-fix-v3 0/4] x86/tdx: Handle in-kernel MMIO Kuppuswamy Sathyanarayanan
2021-06-08 15:59 ` [RFC v2-fix-v3 1/4] x86/insn-eval: Introduce insn_get_modrm_reg_ptr() Kuppuswamy Sathyanarayanan
2021-06-08 15:59 ` [RFC v2-fix-v3 2/4] x86/insn-eval: Introduce insn_decode_mmio() Kuppuswamy Sathyanarayanan
2021-06-08 15:59 ` [RFC v2-fix-v3 3/4] x86/sev-es: Use insn_decode_mmio() for MMIO implementation Kuppuswamy Sathyanarayanan
2021-06-08 15:59 ` [RFC v2-fix-v3 4/4] x86/tdx: Handle in-kernel MMIO Kuppuswamy Sathyanarayanan
2021-06-02 19:42 ` [RFC v2-fix-v2 2/2] " Kuppuswamy Sathyanarayanan
2021-06-02 21:01 ` Andi Kleen
2021-06-02 22:14 ` Kuppuswamy, Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 16/32] x86/tdx: Handle MWAIT, MONITOR and WBINVD Kuppuswamy Sathyanarayanan
2021-05-11 1:23 ` Dan Williams
2021-05-11 2:17 ` Andi Kleen
2021-05-11 2:44 ` Kuppuswamy, Sathyanarayanan
2021-05-11 2:51 ` Andi Kleen
2021-05-11 15:37 ` Dan Williams
2021-05-11 15:42 ` Andi Kleen
2021-05-11 15:44 ` Dave Hansen
2021-05-11 15:50 ` Dan Williams
2021-05-11 15:52 ` Andi Kleen
2021-05-11 16:04 ` Dave Hansen
2021-05-11 17:06 ` Andi Kleen
2021-05-11 17:42 ` Dave Hansen
2021-05-11 17:48 ` Andi Kleen
2021-05-24 23:32 ` [RFC v2-fix-v2 1/2] x86/tdx: Handle MWAIT and MONITOR Kuppuswamy Sathyanarayanan
2021-05-24 23:32 ` [RFC v2-fix-v2 2/2] x86/tdx: Ignore WBINVD instruction for TDX guest Kuppuswamy Sathyanarayanan
2021-05-24 23:39 ` Dan Williams
2021-05-25 0:29 ` Kuppuswamy, Sathyanarayanan
2021-05-25 0:50 ` Dan Williams
2021-05-25 0:54 ` Sean Christopherson
2021-05-25 1:02 ` Andi Kleen
2021-05-25 1:45 ` Dan Williams
2021-05-25 2:13 ` Andi Kleen
2021-05-25 2:49 ` Dan Williams
2021-05-25 3:27 ` Andi Kleen
2021-05-25 3:40 ` Dan Williams
2021-05-26 1:09 ` Andi Kleen
2021-05-27 4:38 ` [RFC v2-fix-v3 1/1] " Kuppuswamy Sathyanarayanan
2021-06-05 3:35 ` Dan Williams
2021-06-08 21:35 ` [RFC v2-fix-v3 1/1] x86/tdx: Skip " Kuppuswamy Sathyanarayanan
2021-06-08 21:41 ` Dan Williams
2021-06-08 22:17 ` Dave Hansen
2021-06-08 22:34 ` Andi Kleen
2021-06-08 22:36 ` Kuppuswamy, Sathyanarayanan
2021-06-08 22:53 ` Dave Hansen
2021-06-08 23:04 ` Andi Kleen
2021-06-08 23:04 ` Kuppuswamy, Sathyanarayanan
2021-06-08 23:32 ` Dan Williams
2021-06-08 23:38 ` Dave Hansen
2021-06-09 0:07 ` Dan Williams
2021-06-09 0:14 ` Kuppuswamy, Sathyanarayanan
2021-06-09 1:10 ` [RFC v2-fix-v4 " Kuppuswamy Sathyanarayanan
2021-06-09 3:40 ` Dan Williams
2021-06-09 3:56 ` Kuppuswamy, Sathyanarayanan
2021-06-09 4:19 ` Dan Williams
2021-06-09 4:27 ` Andi Kleen
2021-06-09 15:09 ` Dan Williams
2021-06-09 16:12 ` Andy Lutomirski
2021-06-09 17:28 ` Kuppuswamy, Sathyanarayanan
2021-06-09 17:31 ` Dan Williams
2021-06-09 18:24 ` Kuppuswamy, Sathyanarayanan
2021-06-09 19:49 ` [RFC v2-fix-v5 1/1] x86: Skip WBINVD instruction for VM guest Kuppuswamy Sathyanarayanan
2021-06-09 19:56 ` Dan Williams
2021-06-09 21:03 ` Dave Hansen
2021-06-09 21:38 ` Dan Williams
2021-06-09 21:42 ` Kuppuswamy, Sathyanarayanan
2021-06-09 23:55 ` Dave Hansen
2021-06-09 4:02 ` [RFC v2-fix-v4 1/1] x86/tdx: Skip WBINVD instruction for TDX guest Andy Lutomirski
2021-06-09 4:21 ` Dan Williams
2021-06-09 4:25 ` Andi Kleen
2021-06-09 4:32 ` Andy Lutomirski
2021-06-09 4:40 ` Andi Kleen
2021-06-09 4:54 ` Kuppuswamy, Sathyanarayanan
2021-06-09 14:12 ` Dave Hansen
2021-05-25 4:32 ` [RFC v2-fix-v2 2/2] x86/tdx: Ignore " Dave Hansen
2021-05-25 0:36 ` Andi Kleen
2021-05-24 23:42 ` Dave Hansen
2021-05-25 0:39 ` Andi Kleen
2021-05-25 0:53 ` Dan Williams
2021-05-25 2:26 ` [RFC v2-fix-v2 1/2] x86/tdx: Handle MWAIT and MONITOR Dan Williams
2021-05-11 14:08 ` [RFC v2 16/32] x86/tdx: Handle MWAIT, MONITOR and WBINVD Dave Hansen
2021-05-11 16:09 ` Sean Christopherson
2021-05-11 16:16 ` Dave Hansen
2021-05-11 15:53 ` Dave Hansen
2021-04-26 18:01 ` [RFC v2 17/32] ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Structure Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 18/32] ACPICA: ACPI 6.4: MADT: add Multiprocessor Wakeup Mailbox Structure Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 19/32] ACPI/table: Print MADT Wake table information Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` Kuppuswamy Sathyanarayanan [this message]
2021-04-26 18:01 ` [RFC v2 21/32] x86/boot: Add a trampoline for APs booting in 64-bit mode Kuppuswamy Sathyanarayanan
2021-05-13 2:56 ` Dan Williams
2021-05-18 0:54 ` [RFC v2-fix 1/1] " Kuppuswamy Sathyanarayanan
2021-05-18 2:06 ` Dan Williams
2021-05-18 2:53 ` Kuppuswamy, Sathyanarayanan
2021-05-18 4:08 ` Dan Williams
2021-05-20 0:18 ` Kuppuswamy, Sathyanarayanan
2021-05-20 0:40 ` Dan Williams
2021-05-20 0:42 ` Kuppuswamy, Sathyanarayanan
2021-05-21 14:39 ` [RFC v2-fix-v2 " Kuppuswamy Sathyanarayanan
2021-05-21 18:29 ` Dan Williams
2021-04-26 18:01 ` [RFC v2 22/32] x86/boot: Avoid #VE during compressed boot for TDX platforms Kuppuswamy Sathyanarayanan
2021-05-13 3:03 ` Dan Williams
2021-04-26 18:01 ` [RFC v2 23/32] x86/boot: Avoid unnecessary #VE during boot process Kuppuswamy Sathyanarayanan
2021-05-13 3:23 ` Dan Williams
2021-05-18 0:59 ` [WARNING: UNSCANNABLE EXTRACTION FAILED][WARNING: UNSCANNABLE EXTRACTION FAILED][RFC v2-fix 1/1] x86/boot: Avoid #VE during boot for TDX platforms Kuppuswamy Sathyanarayanan
2021-05-19 16:53 ` [RFC " Dave Hansen
2021-05-21 14:35 ` [RFC v2-fix-v2 " Kuppuswamy Sathyanarayanan
2021-05-21 16:11 ` Dave Hansen
2021-05-21 18:18 ` Sean Christopherson
2021-05-21 18:30 ` Dave Hansen
2021-05-21 18:32 ` Kuppuswamy, Sathyanarayanan
2021-05-24 23:27 ` [RFC v2-fix-v3 " Kuppuswamy Sathyanarayanan
2021-05-27 21:25 ` [RFC v2-fix-v4 " Kuppuswamy Sathyanarayanan
2021-06-08 23:14 ` Dan Williams
2021-05-21 18:31 ` [RFC v2-fix-v2 " Kuppuswamy, Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 24/32] x86/topology: Disable CPU online/offline control for TDX guest Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 25/32] x86/tdx: Forcefully disable legacy PIC for TDX guests Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 26/32] x86/mm: Move force_dma_unencrypted() to common code Kuppuswamy Sathyanarayanan
2021-05-07 21:54 ` Dave Hansen
2021-05-10 22:19 ` Kuppuswamy, Sathyanarayanan
2021-05-10 22:23 ` Dave Hansen
2021-05-12 13:08 ` Kirill A. Shutemov
2021-05-12 15:44 ` Dave Hansen
2021-05-12 15:53 ` Sean Christopherson
2021-05-13 16:40 ` Kuppuswamy, Sathyanarayanan
2021-05-13 17:49 ` Dave Hansen
2021-05-13 18:17 ` Kuppuswamy, Sathyanarayanan
2021-05-13 19:38 ` Andi Kleen
2021-05-13 19:42 ` Dave Hansen
2021-05-17 18:16 ` Sean Christopherson
2021-05-17 18:27 ` Kuppuswamy, Sathyanarayanan
2021-05-17 18:33 ` Dave Hansen
2021-05-17 18:37 ` Sean Christopherson
2021-05-17 22:32 ` Kuppuswamy, Sathyanarayanan
2021-05-17 23:11 ` Andi Kleen
2021-05-18 1:28 ` Kuppuswamy, Sathyanarayanan
2021-05-27 4:46 ` Kuppuswamy, Sathyanarayanan
2021-05-27 4:47 ` [RFC v2-fix-v1 1/1] " Kuppuswamy Sathyanarayanan
2021-06-01 2:10 ` [RFC v2-fix-v2 " Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 27/32] x86/tdx: Exclude Shared bit from __PHYSICAL_MASK Kuppuswamy Sathyanarayanan
2021-05-19 5:00 ` Kuppuswamy, Sathyanarayanan
2021-05-19 16:14 ` Dave Hansen
2021-05-20 18:48 ` Kuppuswamy, Sathyanarayanan
2021-05-20 18:56 ` Kuppuswamy, Sathyanarayanan
2021-05-20 19:33 ` Sean Christopherson
2021-05-20 19:42 ` Kuppuswamy, Sathyanarayanan
2021-05-20 20:16 ` Sean Christopherson
2021-05-20 20:31 ` Andi Kleen
2021-05-20 21:18 ` Sean Christopherson
2021-05-20 21:23 ` Dave Hansen
2021-05-20 21:28 ` Kuppuswamy, Sathyanarayanan
2021-05-20 23:25 ` Andi Kleen
2021-05-20 20:56 ` Dave Hansen
2021-05-31 21:46 ` Kirill A. Shutemov
2021-06-01 2:08 ` [RFC v2-fix-v1 1/1] x86/tdx: Exclude Shared bit from physical_mask Kuppuswamy Sathyanarayanan
2021-05-20 20:30 ` [RFC v2 27/32] x86/tdx: Exclude Shared bit from __PHYSICAL_MASK Dave Hansen
2021-04-26 18:01 ` [RFC v2 28/32] x86/tdx: Make pages shared in ioremap() Kuppuswamy Sathyanarayanan
2021-05-07 21:55 ` Dave Hansen
2021-05-07 22:38 ` Andi Kleen
2021-05-10 22:23 ` Kuppuswamy, Sathyanarayanan
2021-05-10 22:30 ` Dave Hansen
2021-05-10 22:52 ` Sean Christopherson
2021-05-11 9:35 ` Borislav Petkov
2021-05-20 20:12 ` Kuppuswamy, Sathyanarayanan
2021-05-21 15:18 ` Borislav Petkov
2021-05-21 16:19 ` Tom Lendacky
2021-05-21 18:49 ` Borislav Petkov
2021-05-21 21:14 ` Tom Lendacky
2021-05-25 18:21 ` Kuppuswamy, Sathyanarayanan
2021-05-31 15:13 ` Borislav Petkov
2021-05-31 17:32 ` Kuppuswamy, Sathyanarayanan
2021-05-31 17:55 ` Borislav Petkov
2021-05-31 18:45 ` Kuppuswamy, Sathyanarayanan
2021-05-31 19:14 ` Borislav Petkov
2021-06-01 2:07 ` [RFC v2-fix-v1 1/1] " Kuppuswamy Sathyanarayanan
2021-06-01 21:16 ` [RFC v2 28/32] " Kuppuswamy, Sathyanarayanan
2021-05-26 21:37 ` Kuppuswamy, Sathyanarayanan
2021-05-26 22:02 ` Tom Lendacky
2021-05-26 22:14 ` Tom Lendacky
2021-05-26 22:20 ` Kuppuswamy, Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 29/32] x86/tdx: Add helper to do MapGPA TDVMALL Kuppuswamy Sathyanarayanan
2021-05-19 15:59 ` Dave Hansen
2021-05-20 23:14 ` Kuppuswamy, Sathyanarayanan
2021-05-27 4:56 ` [RFC v2-fix-v1 1/1] x86/tdx: Add helper to do MapGPA hypercall Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 30/32] x86/tdx: Make DMA pages shared Kuppuswamy Sathyanarayanan
2021-05-18 1:19 ` [RFC v2-fix 1/1] " Kuppuswamy Sathyanarayanan
2021-05-18 19:55 ` Sean Christopherson
2021-05-18 22:12 ` Kuppuswamy, Sathyanarayanan
2021-05-18 22:31 ` Dave Hansen
2021-06-01 2:06 ` [RFC v2-fix-v2 " Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 31/32] x86/kvm: Use bounce buffers for TD guest Kuppuswamy Sathyanarayanan
2021-06-01 2:03 ` [RFC v2-fix-v1 1/1] " Kuppuswamy Sathyanarayanan
2021-04-26 18:01 ` [RFC v2 32/32] x86/tdx: ioapic: Add shared bit for IOAPIC base address Kuppuswamy Sathyanarayanan
2021-05-07 23:06 ` Dave Hansen
2021-05-24 23:29 ` [RFC v2-fix-v2 1/1] " Kuppuswamy Sathyanarayanan
2021-06-01 1:28 ` [RFC v2-fix-v3 " Kuppuswamy Sathyanarayanan
2021-05-03 23:21 ` [RFC v2 00/32] Add TDX Guest Support Kuppuswamy, Sathyanarayanan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7668517006b7be1c3558ddde4f43e87b5ce814de.1619458733.git.sathyanarayanan.kuppuswamy@linux.intel.com \
--to=sathyanarayanan.kuppuswamy@linux.intel.com \
--cc=ak@linux.intel.com \
--cc=ashok.raj@intel.com \
--cc=dan.j.williams@intel.com \
--cc=dave.hansen@intel.com \
--cc=kirill.shutemov@linux.intel.com \
--cc=knsathya@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=luto@kernel.org \
--cc=peterz@infradead.org \
--cc=sean.j.christopherson@intel.com \
--cc=seanjc@google.com \
--cc=tony.luck@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).