lkml.org 
[lkml]   [2014]   [Sep]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Xen-devel] [V5 PATCH 1/1] x86/xen: Set EFER.NX and EFER.SCE in PVH guests
On Fri, 12 Sep 2014 16:42:58 -0400
Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> wrote:

> On Wed, Sep 10, 2014 at 04:36:06PM -0700, Mukesh Rathor wrote:

sorry, i didn't realize you had more comments... didn't scroll down :)..

> > cpumask_var_t xen_cpu_initialized_map;
> >
> > @@ -99,10 +100,14 @@ static void cpu_bringup(void)
> > wmb(); /* make sure everything is
> > out */ }
> >
> > -/* Note: cpu parameter is only relevant for PVH */
> > -static void cpu_bringup_and_idle(int cpu)
> > +/*
> > + * Note: cpu parameter is only relevant for PVH. The reason for
> > passing it
> > + * is we can't do smp_processor_id until the percpu segments are
> > loaded, for
> > + * which we need the cpu number! So we pass it in rdi as first
> > parameter.
> > + */
>
> Thank you for expanding on that (I totally forgot why we did that).

sure.

> > + * The vcpu comes on kernel page tables which have
> > the NX pte
> > + * bit set. This means before DS/SS is touched, NX
> > in
> > + * EFER must be set. Hence the following assembly
> > glue code.
>
> And you ripped out the nice 'N.B' comment I added. Sad :-(
> > */
> > + ctxt->user_regs.eip = (unsigned
> > long)xen_pvh_early_cpu_init; ctxt->user_regs.rdi = cpu;
> > + ctxt->user_regs.rsi = true; /* secondary cpu ==
> > true */
>
> Oh, that is new. Ah yes we can use that [looking at Xen code].
> I wonder what other registers we can use to pass stuff around.

All GPRs. I commented that we can do that in the Rogers PVH doc.

Looks like David responded to other comments.

Thanks,
Mukesh



\
 
 \ /
  Last update: 2014-09-16 04:01    [W:0.095 / U:0.676 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site