[Xen-devel] [PATCH] xen/x86: Use 2M superpages for text/data/bss mappings

2016-02-24 Thread Andrew Cooper
This balloons the size of Xen in memory from 4.4MB to 8MB, because of the required alignment adjustments. However * All mappings are 2M superpages. * .text (and .init at boot) are the only sections marked executable. * .text and .rodata are marked read-only. Signed-off-by: Andrew Cooper --- C

Re: [Xen-devel] [PATCH] xen/x86: Use 2M superpages for text/data/bss mappings

2016-02-22 Thread Jan Beulich
>>> On 22.02.16 at 11:24, wrote: > On 22/02/16 09:55, Jan Beulich wrote: > --- a/xen/arch/x86/xen.lds.S > +++ b/xen/arch/x86/xen.lds.S > @@ -38,6 +38,9 @@ SECTIONS >. = __XEN_VIRT_START; >__image_base__ = .; > #endif > + > + __2M_text_start = .; /*

Re: [Xen-devel] [PATCH] xen/x86: Use 2M superpages for text/data/bss mappings

2016-02-22 Thread Andrew Cooper
On 22/02/16 09:55, Jan Beulich wrote: > +{ +flags = PAGE_HYPERVISOR_RX | _PAGE_PSE; +} +else if ( i >= l2_table_offset((unsigned long)&__2M_rodata_start) && + i < l2_table_of

Re: [Xen-devel] [PATCH] xen/x86: Use 2M superpages for text/data/bss mappings

2016-02-22 Thread Jan Beulich
>>> On 19.02.16 at 16:51, wrote: > On 19/02/16 14:58, Jan Beulich wrote: > On 18.02.16 at 19:03, wrote: >>> --- a/xen/arch/x86/setup.c >>> +++ b/xen/arch/x86/setup.c >>> @@ -921,13 +921,51 @@ void __init noreturn __start_xen(unsigned long mbi_p) >>> /* The only data mappings to b

Re: [Xen-devel] [PATCH] xen/x86: Use 2M superpages for text/data/bss mappings

2016-02-19 Thread Andrew Cooper
On 19/02/16 14:58, Jan Beulich wrote: On 18.02.16 at 19:03, wrote: >> --- a/xen/arch/x86/setup.c >> +++ b/xen/arch/x86/setup.c >> @@ -921,13 +921,51 @@ void __init noreturn __start_xen(unsigned long mbi_p) >> /* The only data mappings to be relocated are in the Xen area. >> */ >

Re: [Xen-devel] [PATCH] xen/x86: Use 2M superpages for text/data/bss mappings

2016-02-19 Thread Jan Beulich
>>> On 18.02.16 at 19:03, wrote: > --- a/xen/arch/x86/setup.c > +++ b/xen/arch/x86/setup.c > @@ -921,13 +921,51 @@ void __init noreturn __start_xen(unsigned long mbi_p) > /* The only data mappings to be relocated are in the Xen area. */ > pl2e = __va(__pa(l2_xenmap)); >

[Xen-devel] [PATCH] xen/x86: Use 2M superpages for text/data/bss mappings

2016-02-18 Thread Andrew Cooper
This balloons the size of Xen in memory from 3.4MB to 12MB, because of the required alignment adjustments. However * All mappings are 2M superpages. * .text (and .init at boot) are the only sections marked executable. * .text and .rodata are marked read-only. Signed-off-by: Andrew Cooper ---