Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-changelog

[Xen-changelog] Slight fix to BIOS e820 bug workaround. Remove the check

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Slight fix to BIOS e820 bug workaround. Remove the check
From: Xen patchbot -unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 16 Dec 2005 05:12:07 +0000
Delivery-date: Fri, 16 Dec 2005 05:14:07 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User kaf24@xxxxxxxxxxxxxxxxxxxx
# Node ID 3dc1c23dd5085ec0fc7dbfa5e4f052ddfa4e4260
# Parent  47d947e07205cbbf3c355e0bdf98aa08c37b2994
Slight fix to BIOS e820 bug workaround. Remove the check
for whether e820 list is below 1MB: all bootloaders place
it below 1MB so teh check is ineffective and, in any case,
SYSLINUX has the same issue as GRUB (does not pre-initialize
the memory area that e820 function writes to).

Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>

diff -r 47d947e07205 -r 3dc1c23dd508 xen/arch/x86/setup.c
--- a/xen/arch/x86/setup.c      Fri Dec 16 03:11:41 2005
+++ b/xen/arch/x86/setup.c      Fri Dec 16 03:57:27 2005
@@ -315,19 +315,15 @@
             memory_map_t *map = __va(mbi->mmap_addr + bytes);
 
             /*
-             * This is a gross workaround for a BIOS/GRUB bug. GRUB does
+             * This is a gross workaround for a BIOS bug. Some bootloaders do
              * not write e820 map entries into pre-zeroed memory. This is
              * okay if the BIOS fills in all fields of the map entry, but
              * some broken BIOSes do not bother to write the high word of
              * the length field if the length is smaller than 4GB. We
              * detect and fix this by flagging sections below 4GB that
-             * appear to be larger than 4GB in size. We disable this check
-             * for mbootpack and syslinux (which we can detect because they
-             * place the mmap_addr list above 1MB in memory).
+             * appear to be larger than 4GB in size.
              */
-            if ( (mbi->mmap_addr < 0x100000) &&
-                 (map->base_addr_high == 0) &&
-                 (map->length_high != 0) )
+            if ( (map->base_addr_high == 0) && (map->length_high != 0) )
             {
                 e820_warn = 1;
                 map->length_high = 0;

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>