Re: Increasing KVM on amd64



On Sun, Jun 08, 2008 at 12:39:43AM -0500, Alan Cox wrote:
Kostik Belousov wrote:

On Sat, Jun 07, 2008 at 06:59:35PM -0500, Alan Cox wrote:


You can download a patch from
http://www.cs.rice.edu/~alc/amd64_kvm_6GB.patch that increases amd64's
kernel virtual address space to 6GB. This patch also increases the
default for the kmem map to almost 2GB. I believe that kernel loadable
modules still work. However, I suspect that mini-dumps are broken.


The amd64 modules text/data/bss virtual addresses are allocated from the
kernel_map (link_elf_obj.c, link_elf_load_file). Now, the lower end
of the kernel_map is top-6Gb.

Kernel code (both kernel proper and modules) is compiled for "kernel memory
model", according to the gcc info:
`-mcmodel=kernel'
Generate code for the kernel code model. The kernel runs in the
negative 2 GB of the address space. This model has to be used for
Linux kernel code.

I suspect we have a problem there.




The change to link_elf_obj.c is supposed to ensure allocation of an
address in the upper 2GB of the kernel map for the module.

Ah, I overlooked it, sorry.

Attachment: pgpygdKcbdjZU.pgp
Description: PGP signature