Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest

2016-10-14 Thread Boris Ostrovsky
On 10/14/2016 03:14 PM, Konrad Rzeszutek Wilk wrote: > >> + >> +memset(_bootparams, 0, sizeof(pvh_bootparams)); >> + >> +memmap.nr_entries = ARRAY_SIZE(pvh_bootparams.e820_map); >> +set_xen_guest_handle(memmap.buffer, pvh_bootparams.e820_map); >> +if

Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest

2016-10-14 Thread Konrad Rzeszutek Wilk
On Fri, Oct 14, 2016 at 02:05:14PM -0400, Boris Ostrovsky wrote: > Start PVH guest at XEN_ELFNOTE_PHYS32_ENTRY address. Setup hypercall > page, initialize boot_params, enable early page tables. > > Since this stub is executed before kernel entry point we cannot use > variables in .bss which is

Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest

2016-10-14 Thread Andrew Cooper
On 14/10/16 19:55, Boris Ostrovsky wrote: > On 10/14/2016 02:38 PM, Andrew Cooper wrote: >>> + jmp *%rax >>> + >>> +#else /* CONFIG_X86_64 */ >>> + >>> + call setup_pgtable_32 >>> + >>> + mov $_pa(initial_page_table), %eax >>> + movl %eax, %cr3 >>> + >>> + movl %cr0, %eax >>> + orl

Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest

2016-10-14 Thread Boris Ostrovsky
On 10/14/2016 02:38 PM, Andrew Cooper wrote: >> +jmp *%rax >> + >> +#else /* CONFIG_X86_64 */ >> + >> +call setup_pgtable_32 >> + >> +mov $_pa(initial_page_table), %eax >> +movl %eax, %cr3 >> + >> +movl %cr0, %eax >> +orl $(X86_CR0_PG | X86_CR0_PE), %eax >> +movl %eax,

Re: [Xen-devel] [PATCH 4/8] xen/pvh: Bootstrap PVH guest

2016-10-14 Thread Andrew Cooper
On 14/10/16 19:05, Boris Ostrovsky wrote: > diff --git a/arch/x86/xen/xen-pvh.S b/arch/x86/xen/xen-pvh.S > new file mode 100644 > index 000..58c477b > --- /dev/null > +++ b/arch/x86/xen/xen-pvh.S > @@ -0,0 +1,143 @@ > +/* > + * Copyright C 2016, Oracle and/or its affiliates. All rights