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
>>> 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 = .; /*
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
>>> 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
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.
>> */
>
>>> 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));
>
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
---