[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen staging] x86/hvm: introduce lapic_save_regs_one()
commit 261623d8a57afe6d340f4f0ac1fb0ed368451fba Author: Alexandru Isaila <aisaila@xxxxxxxxxxxxxxx> AuthorDate: Mon Sep 10 16:26:00 2018 +0200 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Wed Sep 12 16:40:50 2018 +0200 x86/hvm: introduce lapic_save_regs_one() This is used to save data from a single instance. Signed-off-by: Alexandru Isaila <aisaila@xxxxxxxxxxxxxxx> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> --- xen/arch/x86/hvm/vlapic.c | 26 +++++++++++++++----------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/xen/arch/x86/hvm/vlapic.c b/xen/arch/x86/hvm/vlapic.c index 31c7a66d01..8b2955365f 100644 --- a/xen/arch/x86/hvm/vlapic.c +++ b/xen/arch/x86/hvm/vlapic.c @@ -1422,26 +1422,30 @@ static int lapic_save_hidden(struct domain *d, hvm_domain_context_t *h) return err; } +static int lapic_save_regs_one(struct vcpu *v, hvm_domain_context_t *h) +{ + if ( !has_vlapic(v->domain) ) + return 0; + + if ( hvm_funcs.sync_pir_to_irr ) + hvm_funcs.sync_pir_to_irr(v); + + return hvm_save_entry(LAPIC_REGS, v->vcpu_id, h, vcpu_vlapic(v)->regs); +} + static int lapic_save_regs(struct domain *d, hvm_domain_context_t *h) { struct vcpu *v; - struct vlapic *s; - int rc = 0; - - if ( !has_vlapic(d) ) - return 0; + int err = 0; for_each_vcpu ( d, v ) { - if ( hvm_funcs.sync_pir_to_irr ) - hvm_funcs.sync_pir_to_irr(v); - - s = vcpu_vlapic(v); - if ( (rc = hvm_save_entry(LAPIC_REGS, v->vcpu_id, h, s->regs)) != 0 ) + err = lapic_save_regs_one(v, h); + if ( err ) break; } - return rc; + return err; } /* -- generated by git-patchbot for /home/xen/git/xen.git#staging _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |