From patchwork Mon Jul 27 00:23:51 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jordan Justen X-Patchwork-Id: 37433 Received: from vger.kernel.org (vger.kernel.org [209.132.176.167]) by demeter.kernel.org (8.14.2/8.14.2) with ESMTP id n6R0O1Yv008167 for ; Mon, 27 Jul 2009 00:24:01 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751136AbZG0AX6 (ORCPT ); Sun, 26 Jul 2009 20:23:58 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1754307AbZG0AXy (ORCPT ); Sun, 26 Jul 2009 20:23:54 -0400 Received: from mga01.intel.com ([192.55.52.88]:2927 "EHLO mga01.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751136AbZG0AXx (ORCPT ); Sun, 26 Jul 2009 20:23:53 -0400 Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga101.fm.intel.com with ESMTP; 26 Jul 2009 17:22:48 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.43,273,1246863600"; d="scan'208";a="711248709" Received: from jljusten-desk2.jf.intel.com (HELO localhost.localdomain) ([134.134.19.133]) by fmsmga001.fm.intel.com with ESMTP; 26 Jul 2009 17:27:07 -0700 From: Jordan Justen To: kvm-devel Cc: Jordan Justen Subject: [PATCH 1/3] Update BIOS INT15-E820 to allow a larger BIOS image Date: Sun, 26 Jul 2009 17:23:51 -0700 Message-Id: <1248654233-29845-2-git-send-email-jordan.l.justen@intel.com> X-Mailer: git-send-email 1.6.0.4 In-Reply-To: <1248654233-29845-1-git-send-email-jordan.l.justen@intel.com> References: <1248654233-29845-1-git-send-email-jordan.l.justen@intel.com> Sender: kvm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org The bios will now reserve more memory via the E820 functions. Note that the standard KVM BIOS will most likely not make use of this expanded BIOS region. This change will synchronize the BIOS INT15-E820 reservations to match other changes that will allow alternate BIOS images to be larger in size. Previously the BIOS reserved: 0xfffbc000-0xfffbcfff - 4KB - EPT identity mapping pages 0xfffbd000-0xfffbffff - 12KB - TSS pages 0xfffc0000-0xffffffff - 256KB - Max bios.bin (usually top 128KB is used) Now the BIOS will reserve: 0xfeffc000-0xfeffcfff - 4KB - EPT identity mapping pages 0xfeffd000-0xfeffffff - 12KB - TSS Pages 0xff000000-0xffffffff - 16MB - Max bios.bin Signed-off-by: Jordan Justen --- kvm/bios/rombios.c | 8 ++++---- 1 files changed, 4 insertions(+), 4 deletions(-) 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