[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[XTF PATCH v1 11/15] x86: export per-vCPU IDTR initialization


  • To: xen-devel@xxxxxxxxxxxxxxxxxxxx
  • From: dmukhin@xxxxxxxx
  • Date: Wed, 4 Nov 2026 17:38:13 -0800
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 205.220.161.53) smtp.rcpttodomain=lists.xenproject.org smtp.mailfrom=ford.com; dmarc=pass (p=reject sp=reject pct=100) action=none header.from=ford.com; dkim=pass (signature was verified) header.d=saarlouis.ford.com; dkim=pass (signature was verified) header.d=ford.com; arc=none (0)
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=ICni6QafSI0sZgyeoJf0rlSYN5mlAf+VMp/I2BHcwlQ=; b=nWZDy0JLxnl0m8IXUBZ+DW5mY4gj1brH1zWu1mOE2WeNRZ0iz+1QRpnRmbOuIxBMZNyKcjoeW2Ww4rLIRgRfX4QnIglDe0EYIKfjcTupQJsljfLqHVIMWFGxnL6vOVMayhpRkjqthJR1pQRGMZvVMpwyJxPTBONzsBWF57HhhcxeXA5yfaXP8G7IkrATrtVKm6sDqB8t+eu4Ax2IIax6XImVXYcjMrOisrV+ecw5VMeiUXWVBSbcOexiok4ZCCusF0Gn+pYg4Nu/KkDNIFDknfU5G9zqCiSHKAAwkHONBEjwx9RxOYDjf39qesbLZ+IeijD0cgZEvRpFBv/8Xct3Rw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=rSoiKLAaZmhPJHu24O26VeBqTWs2LSObiEmvnVa3RSEL634lgQHnfBsHz7gqg+NrMBc8Olhws//2aij/RrdZoOjC8ynSn6As7B0/MGpzl5ykcQlUiNKbSZyO2nf9lnmiOeontdLyf7ZEGFPEymj0jEO0EYD2J+Mkmd0h5dMohtCQUGE4Wb+TQPz6bvzZF5UIBnl+OnvB9v7psS6FxuClbZHxi93G25GF8wokhI52vtFm03qmTp5jFazI0UClYiKkgAEokSBkYGn+PvVuG9MItMKrQdhY1pcnend7jTWX4dws5usefKrqbv6e4CZ6+qbwmoFYpYX2vfYEV5NTaxHw4w==
  • Authentication-results: eu.smtp.expurgate.cloud; dkim=pass header.s=ppford header.d=ford.com header.i="@ford.com" header.h="Cc:Content-Transfer-Encoding:Content-Type:Date:From:In-Reply-To:Message-ID:MIME-Version:References:Subject:To"; dkim=pass header.s=selector2-azureford-onmicrosoft-com header.d=azureford.onmicrosoft.com header.i="@azureford.onmicrosoft.com" header.h="From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck"; dkim=pass header.s=ppserprodsaar header.d=saarlouis.ford.com header.i="@saarlouis.ford.com" header.h="Cc:Content-Transfer-Encoding:Date:From:In-Reply-To:Message-ID:MIME-Version:References:Subject:To"; dkim=pass header.s=ppfserpocford header.d=ford.com header.i="@ford.com" header.h="Cc:Content-Transfer-Encoding:Date:From:In-Reply-To:Message-ID:MIME-Version:References:Subject:To"
  • Cc: andrew.cooper3@xxxxxxxxxx, anthony.perard@xxxxxxxxxx, jbeulich@xxxxxxxx, julien@xxxxxxx, michal.orzel@xxxxxxx, roger@xxxxxxxxxxxxxx, sstabellini@xxxxxxxxxx, dmukhin@xxxxxxx, Denis Mukhin <dmukhin@xxxxxxxx>
  • Delivery-date: Thu, 05 Nov 2026 01:39:04 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Pser-m365-app: SER-APP

From: Denis Mukhin <dmukhin@xxxxxxxx>

Signed-off-by: Denis Mukhin <dmukhin@xxxxxxxx>
---
 arch/x86/hvm/traps.c        | 7 ++++++-
 arch/x86/include/arch/idt.h | 7 +++++++
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/arch/x86/hvm/traps.c b/arch/x86/hvm/traps.c
index ad7b8cbc3dda..dc7d617b80c5 100644
--- a/arch/x86/hvm/traps.c
+++ b/arch/x86/hvm/traps.c
@@ -70,6 +70,11 @@ static env_tss tss_DF __aligned(16) =
     .iopb = X86_TSS_INVALID_IO_BITMAP,
 };
 
+void xtf_load_idt(void)
+{
+    lidt(&idt_ptr);
+}
+
 int xtf_set_idte(unsigned int vector, const struct xtf_idte *idte)
 {
     pack_intr_gate(&idt[vector], idte->cs, idte->addr, idte->dpl, 0);
@@ -116,7 +121,7 @@ void arch_init_traps(void)
     pack_intr_gate(&idt[X86_VEC_RET2KERN],
                    __KERN_CS, _u(&entry_ret_to_kernel), 3, 0);
 
-    lidt(&idt_ptr);
+    xtf_load_idt();
 
     pack_tss_desc(&gdt[GDTE_TSS], &tss);
     ltr(GDTE_TSS * 8);
diff --git a/arch/x86/include/arch/idt.h b/arch/x86/include/arch/idt.h
index 02955d54bae4..b54dbec830f0 100644
--- a/arch/x86/include/arch/idt.h
+++ b/arch/x86/include/arch/idt.h
@@ -29,6 +29,13 @@ struct xtf_idte
     unsigned int cs, dpl;
 };
 
+
+/**
+ * Load per-vCPU IDTR.
+ */
+void xtf_load_idt(void);
+
+
 /**
  * Set up an IDT Entry, in a guest agnostic way.
  *
-- 
2.55.0




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.