|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] x86/vLAPIC: vlapic_init() runs only once for a vCPU
commit 875248527906e6e98812d3ff844bcccbdd594768
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Wed Oct 14 14:05:10 2020 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Wed Oct 14 14:05:10 2020 +0200
x86/vLAPIC: vlapic_init() runs only once for a vCPU
Hence there's no need to guard allocation / mapping by checks whether
the same action has been done before. I assume this was a transient
change which should have been undone before 509529e99148 ("x86 hvm: Xen
interface and implementation for virtual S3") got committed.
While touching this code, drop the pretty useless dprintk()-s.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Reviewed-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
xen/arch/x86/hvm/vlapic.c | 28 +++++++++-------------------
1 file changed, 9 insertions(+), 19 deletions(-)
diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c
index 59660a8af4..5e21fb4937 100644
--- a/xen/arch/x86/hvm/vlapic.c
+++ b/xen/arch/x86/hvm/vlapic.c
@@ -1610,27 +1610,17 @@ int vlapic_init(struct vcpu *v)
vlapic->pt.source = PTSRC_lapic;
- if (vlapic->regs_page == NULL)
- {
- vlapic->regs_page = alloc_domheap_page(v->domain, MEMF_no_owner);
- if ( vlapic->regs_page == NULL )
- {
- dprintk(XENLOG_ERR, "alloc vlapic regs error: %d/%d\n",
- v->domain->domain_id, v->vcpu_id);
- return -ENOMEM;
- }
- }
- if (vlapic->regs == NULL)
+ vlapic->regs_page = alloc_domheap_page(v->domain, MEMF_no_owner);
+ if ( !vlapic->regs_page )
+ return -ENOMEM;
+
+ vlapic->regs = __map_domain_page_global(vlapic->regs_page);
+ if ( vlapic->regs == NULL )
{
- vlapic->regs = __map_domain_page_global(vlapic->regs_page);
- if ( vlapic->regs == NULL )
- {
- free_domheap_page(vlapic->regs_page);
- dprintk(XENLOG_ERR, "map vlapic regs error: %d/%d\n",
- v->domain->domain_id, v->vcpu_id);
- return -ENOMEM;
- }
+ free_domheap_page(vlapic->regs_page);
+ return -ENOMEM;
}
+
clear_page(vlapic->regs);
vlapic_reset(vlapic);
--
generated by git-patchbot for /home/xen/git/xen.git#master
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |