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

Re: [Xen-devel] [PATCH] x86/hvm: implement save/restore for posted interrupts



On Wed, Jul 09, Tian, Kevin wrote:

> > From: Zhang, Yang Z
> > > +++ b/xen/arch/x86/hvm/vlapic.c
> > > @@ -1179,6 +1179,8 @@ static int lapic_save_regs(struct domain *d,
> > > hvm_domain_context_t *h)
> > >
> > >      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 )
> > >              break;
> > > @@ -1230,6 +1232,8 @@ static int lapic_load_regs(struct domain *d,
> > > hvm_domain_context_t *h)
> > >      if ( hvm_load_entry(LAPIC_REGS, h, s->regs) != 0 )
> > >          return -EINVAL;
> > >
> > > +    if ( hvm_funcs.sync_irr_to_pir )
> > > +        hvm_funcs.sync_irr_to_pir(v);
> > This is redundant. Interrupt pending in irr will be injected to guest 
> > correctly, so
> > there is no need to sync it to pir.
> agree. pending irr has to be injected somewhere after restore, and at that 
> point
> irr->pir has already been covered. otherwise it'd be a more general issue.
> could you try whether only adding sync_pir_to_irr is enough?

It continues to fail if I change just lapic_save_regs.

Olaf

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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