qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [patch 1/9] kvm: bios: update SMBIOS table to report memory


From: Marcelo Tosatti
Subject: [Qemu-devel] [patch 1/9] kvm: bios: update SMBIOS table to report memory above 4G
Date: Tue, 20 Jan 2009 00:30:41 -0200
User-agent: quilt/0.47-1

Signed-off-by: Alex Williamson <address@hidden>
Signed-off-by: Avi Kivity <address@hidden>

From: Alex Williamson <address@hidden>

Index: bochs/bios/rombios32.c
===================================================================
--- bochs.orig/bios/rombios32.c
+++ bochs/bios/rombios32.c
@@ -2081,7 +2081,8 @@ void smbios_init(void)
 {
     unsigned cpu_num, nr_structs = 0, max_struct_size = 0;
     char *start, *p, *q;
-    int memsize = ram_size / (1024 * 1024);
+    int memsize = (ram_end == ram_size) ? ram_size / (1024 * 1024) :
+                  (ram_end - (1ull << 32) + ram_size) / (1024 * 1024);
 
 #ifdef BX_USE_EBDA_TABLES
     ebda_cur_addr = align(ebda_cur_addr, 16);
@@ -2108,8 +2109,8 @@ void smbios_init(void)
         add_struct(smbios_type_4_init(p, cpu_num));
     add_struct(smbios_type_16_init(p, memsize));
     add_struct(smbios_type_17_init(p, memsize));
-    add_struct(smbios_type_19_init(p, memsize));
-    add_struct(smbios_type_20_init(p, memsize));
+    add_struct(smbios_type_19_init(p, ram_end / (1024 * 1024)));
+    add_struct(smbios_type_20_init(p, ram_end / (1024 * 1024)));
     add_struct(smbios_type_32_init(p));
     add_struct(smbios_type_127_init(p));
 






reply via email to

[Prev in Thread] Current Thread [Next in Thread]