58e05027b5
Make the p2m structure a 3 level tree which covers the full possible physical space. The p2m structure contains mappings from the domain's pfns to system-wide mfns. The structure has 3 levels and two roots. The first root is for the domain's own use, and is linked with virtual addresses. The second is all mfn references, and is used by Xen on save/restore to allow it to update the p2m mapping for the domain. At boot, the domain builder provides a simple flat p2m array for all the initially present pages. We construct the two levels above that using the early_brk allocator. After early boot time, set_phys_to_machine() will allocate any missing levels using the normal kernel allocator (at GFP_KERNEL, so it must be called in a normal blocking context). Because the early_brk() API requires us to pre-reserve the maximum amount of memory we could allocate, there is still a CONFIG_XEN_MAX_DOMAIN_MEMORY config option, but its only negative side-effect is to increase the kernel's apparent bss size. However, since all unused brk memory is returned to the heap, there's no real downside to making it large. Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
40 lines
974 B
Text
40 lines
974 B
Text
#
|
|
# This Kconfig describes xen options
|
|
#
|
|
|
|
config XEN
|
|
bool "Xen guest support"
|
|
select PARAVIRT
|
|
select PARAVIRT_CLOCK
|
|
depends on X86_64 || (X86_32 && X86_PAE && !X86_VISWS)
|
|
depends on X86_CMPXCHG && X86_TSC
|
|
help
|
|
This is the Linux Xen port. Enabling this will allow the
|
|
kernel to boot in a paravirtualized environment under the
|
|
Xen hypervisor.
|
|
|
|
config XEN_PVHVM
|
|
def_bool y
|
|
depends on XEN
|
|
depends on X86_LOCAL_APIC
|
|
|
|
config XEN_MAX_DOMAIN_MEMORY
|
|
int
|
|
default 128
|
|
depends on XEN
|
|
help
|
|
This only affects the sizing of some bss arrays, the unused
|
|
portions of which are freed.
|
|
|
|
config XEN_SAVE_RESTORE
|
|
bool
|
|
depends on XEN && PM
|
|
default y
|
|
|
|
config XEN_DEBUG_FS
|
|
bool "Enable Xen debug and tuning parameters in debugfs"
|
|
depends on XEN && DEBUG_FS
|
|
default n
|
|
help
|
|
Enable statistics output and various tuning options in debugfs.
|
|
Enabling this option may incur a significant performance overhead.
|