[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v1 06/28] x86/hvm: introduce vlapic_reg_read()
- To: xen-devel@xxxxxxxxxxxxxxxxxxxx
- From: dmukhin@xxxxxxxx
- Date: Wed, 4 Nov 2026 17:33:23 -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=l3VI2UqiyuTXtjuzK4WdaMvCnS6o/o+hC2gZAMXBQR4=; b=Ds3ky+rYAGkOc0mAE6OWMMzq8TU2xvTvDHLAu2S1YkY1P8cimC2VCLUeV4NirvWb4fzRyrUnhdpqFfldy035cyw+B39VgmIpO1nmHzSmC2jxncSPJLybuOw3ANxEo2So78BYHV98bGHxUkeHwjaCsujbnMNEBS8hMbvqw/vpiurqGgepRaXbgJVtl11rAVsB6CKpIgJBIzJeSCSwGfFiGBZXVjpKSPAieT+RSxM25Fe2nOvRrH40FeqQSDs48PN53Mga1da5hWsvHmQDj+JpRNHDIEsxckVEmzAXM/ZTtAt3DayD20ariGs4hZCPCkVdQou06LM2yYlSpbpjRBxpKg==
- Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=vIaCAtprUNX6oFPmVXmUftqL2Tzin78b/Jo3F+LC+7Beis8aHaGYvELyhF9TCOSqFiOL65XNDlruza0B+ILLgWce29hxFTSvXEJ1eAu4gI1We9fhTvLBN/L3doAA6uqQw79MjzaDt6d57ojb4DWQT5Ocsa9MNCnQPOexw+i6iMzlPfdqBrTCBO79tV1pEu0wufYCPXf3AMz2MtryMJtx0nOrKFJxDvamGrz2a5c5La4isD/K+3q10M2pmckHOdTw0i+2QXvSPEBFl98sNMpRFjJK+0TX6HMho/YNb1wikIJaX+Z4TxMLTWUJwt8wNw1ZKpcMdgyoovSkEN+AHwOPvw==
- 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, jason.andryuk@xxxxxxx, jbeulich@xxxxxxxx, roger@xxxxxxxxxxxxxx, teddy.astie@xxxxxxxxxx, dmukhin@xxxxxxx, Denis Mukhin <dmukhin@xxxxxxxx>
- Delivery-date: Thu, 05 Nov 2026 01:34:33 +0000
- List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
- Pser-m365-app: SER-APP
From: Denis Mukhin <dmukhin@xxxxxxxx>
Add vlapic_reg_read() for integration with components relying
on emulated LAPIC accesses.
Signed-off-by: Denis Mukhin <dmukhin@xxxxxxxx>
---
xen/arch/x86/hvm/vlapic.c | 5 +++++
xen/arch/x86/include/asm/hvm/vlapic.h | 1 +
2 files changed, 6 insertions(+)
diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index 6698779e227c..f929fdfd74ee 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -618,6 +618,11 @@ static uint32_t vlapic_read_aligned(const struct vlapic
*vlapic,
return 0;
}
+uint32_t vlapic_reg_read(const struct vcpu *v, unsigned int reg)
+{
+ return vlapic_read_aligned(vcpu_vlapic(v), reg);
+}
+
static int cf_check vlapic_mmio_read(
struct vcpu *v, unsigned long address, unsigned int len,
unsigned long *pval)
diff --git a/xen/arch/x86/include/asm/hvm/vlapic.h
b/xen/arch/x86/include/asm/hvm/vlapic.h
index f442dec3d975..95f6dfe9e941 100644
--- a/xen/arch/x86/include/asm/hvm/vlapic.h
+++ b/xen/arch/x86/include/asm/hvm/vlapic.h
@@ -97,6 +97,7 @@ static inline void vlapic_set_reg(
}
void vlapic_reg_write(struct vcpu *v, unsigned int reg, uint32_t val);
+uint32_t vlapic_reg_read(const struct vcpu *v, unsigned int reg);
bool is_vlapic_lvtpc_enabled(struct vlapic *vlapic);
--
2.55.0
|