Re: [patch] i386, vdso=[0|1] boot option and /proc/sys/vm/vdso_enabled

Andrew Morton
2006-05-21T09:52:48Z

Rusty Russell <rusty@rustcorp.com.au> wrote:
>
> Hypervisors want to use memory at the top of the address space
> (eg. 64MB for Xen, or 168MB for Xen w/ PAE). Creating this hole means
> moving the vsyscall page away from 0xffffe000.
>
> If we create this hole statically with a config option, we give up,
> say, 256MB of lowmem for the case where a hypervisor-capable kernel is
> actually running on native hardware.
>
> If we create this hole dynamically and leave the vsyscall page at the
> top of kernel memory, we would have to patch up the vsyscall elf
> header at boot time to reflect where we put it.
>
> Instead, this patch moves the vsyscall page into the user address
> region, just below PAGE_OFFSET: it's still at a fixed address, but
> it's not where the hypervisor wants to be, so resizing the hole is
> trivial.

Seems to work.