[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH v20 09/13] x86/hvm: Introduce lapic_save_regs_one func
This is used to save data from a single instance. Signed-off-by: Alexandru Isaila <aisaila@xxxxxxxxxxxxxxx> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> --- Changes since v15: - Drop struct vlapic *s. --- 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; } /* -- 2.17.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |