diff mbox

[1/3] Update qemu-kvm bios to allow for a larger bios image.

Message ID 1247767342-13519-1-git-send-email-jordan.l.justen@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

Jordan Justen July 16, 2009, 6:02 p.m. UTC
The bios will now reserve more memory via the E820 functions.

Previously we reserved:
  0xfffbc000-0xfffbcfff -   4KB - KVM kernel module, EPT identity pages tables
  0xfffbd000-0xfffbffff -  12KB - KVM bios, VMC TSS Pages
  0xfffc0000-0xffffffff - 256KB - Max KVM bios.bin (usually top 128KB is used)

Now we will reserve:
  0xfeffc000-0xfeffcfff -   4KB - KVM kernel module, EPT identity pages tables
  0xfeffd000-0xfeffffff -  12KB - KVM bios, VMC TSS Pages
  0xff000000-0xffffffff -  16MB - Max KVM bios.bin

Signed-off-by: Jordan Justen <jordan.l.justen@intel.com>
---
 kvm/bios/rombios.c |    8 ++++----
 1 files changed, 4 insertions(+), 4 deletions(-)
diff mbox

Patch

diff --git a/kvm/bios/rombios.c b/kvm/bios/rombios.c
index 6186199..2d0c153 100644
--- a/kvm/bios/rombios.c
+++ b/kvm/bios/rombios.c
@@ -4596,14 +4596,14 @@  ASM_END
                     case 5:
                         /* 4 pages before the bios, 3 pages for vmx tss pages,
 			 * the other page for EPT real mode pagetable */
-                        set_e820_range(ES, regs.u.r16.di, 0xfffbc000L,
-                                       0xfffc0000L, 0, 0, 2);
+                        set_e820_range(ES, regs.u.r16.di, 0xfeffc000L,
+                                       0xff000000L, 0, 0, 2);
                         regs.u.r32.ebx = 6;
                         break;
                     case 6:
-                        /* 256KB BIOS area at the end of 4 GB */
+                        /* 16MB BIOS area at the end of 4 GB */
                         set_e820_range(ES, regs.u.r16.di,
-                                       0xfffc0000L, 0x00000000L ,0, 0, 2);
+                                       0xff000000L, 0x00000000L ,0, 0, 2);
                         if (extra_highbits_memory_size || extra_lowbits_memory_size)
                             regs.u.r32.ebx = 7;
                         else