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

Re: [Xen-devel] [PATCH] xen/arm: trap SMC instructions and inject an UND exception



On Fri, 2013-05-03 at 11:12 +0100, Stefano Stabellini wrote:
> On Fri, 3 May 2013, Ian Campbell wrote:
> > On Thu, 2013-05-02 at 17:08 +0100, Stefano Stabellini wrote:
> > > On Thu, 2 May 2013, Ian Campbell wrote:
> > > > On Thu, 2013-05-02 at 14:53 +0100, Stefano Stabellini wrote:
> > > > > On Thu, 2 May 2013, Ian Campbell wrote:
> > > > > > Currently only handles 32 bit guests. The 64-bit exception model is
> > > > > > considerably different.
> > > > > > 
> > > > > > Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
> > > > > >
> > > > > > There are probably other places where injecting UND would be more 
> > > > > > appropriate
> > > > > > than killing the guest. It should also be reasonably easy to extend 
> > > > > > this logic
> > > > > > to inject DABT and PABT.
> > > > > > ---
> > > > > >  xen/arch/arm/traps.c                  |   56 
> > > > > > ++++++++++++++++++++++++++++++++-
> > > > > >  xen/include/asm-arm/arm32/processor.h |    4 ++-
> > > > > >  xen/include/asm-arm/processor.h       |    8 +++++
> > > > > >  xen/include/public/arch-arm.h         |    1 +
> > > > > >  4 files changed, 67 insertions(+), 2 deletions(-)
> > > > > > 
> > > > > > diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
> > > > > > index b7487b7..72dddb2 100644
> > > > > > --- a/xen/arch/arm/traps.c
> > > > > > +++ b/xen/arch/arm/traps.c
> > > > > > @@ -59,7 +59,7 @@ void __cpuinit init_traps(void)
> > > > > >      WRITE_SYSREG((vaddr_t)hyp_traps_vector, VBAR_EL2);
> > > > > >  
> > > > > >      /* Setup hypervisor traps */
> > > > > > -    WRITE_SYSREG(HCR_PTW|HCR_BSU_OUTER|HCR_AMO|HCR_IMO|HCR_VM, 
> > > > > > HCR_EL2);
> > > > > > +    
> > > > > > WRITE_SYSREG(HCR_PTW|HCR_BSU_OUTER|HCR_AMO|HCR_IMO|HCR_TSC|HCR_VM, 
> > > > > > HCR_EL2);
> > > > > >      isb();
> > > > > >  }
> > > > > 
> > > > > My recent patch http://marc.info/?l=xen-devel&m=136734156810415 does
> > > > > this
> > > > 
> > > > Right, I should have mentioned that. What do you do with the SMCs? I
> > > > think we've concluded that undef is the right response?
> > > 
> > > I was going to support SMC as a conduit for PSCI calls.
> > 
> > I think we have agreed with the PSCI guys that HVC will be a supported
> > conduit and since that is what we (will) advertise to guests I think
> > that's all we should support -- there's no need to allow two ways to do
> > it.
> 
> The patch were written before the discussion.

Right, I missed a "now" out of my first sentence.

> Now I agree that we can just support HVC and get away with it.
> I'll update my series.

ACK. Do you just want to pull this patch in at the head? Or ack it and
I'll apply as a baseline for you.

I'm also happy to rebase this over your original (i.e. remove the smc
support in it) too if you would prefer. Not sure if your current posting
has other changes required anyway.

Ian.




_______________________________________________
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®.