summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEduardo Habkost2015-01-07 18:36:34 +0100
committerMichael S. Tsirkin2015-01-27 13:46:17 +0100
commit07d01c9c1929e43216005fcc8eccea75776ee0d2 (patch)
tree6b364196e0c08cc723deb4204416cabaf86995da
parentsmbios: Fix dimm size calculation when RAM is multiple of 16GB (diff)
downloadqemu-07d01c9c1929e43216005fcc8eccea75776ee0d2.tar.gz
qemu-07d01c9c1929e43216005fcc8eccea75776ee0d2.tar.xz
qemu-07d01c9c1929e43216005fcc8eccea75776ee0d2.zip
smbios: Don't report unknown CPU speed (fix SVVP regression)
SVVP requires processor speed on Type 4 structures to not be unknown. This was fixed in SeaBIOS 0.5.0 (in 2009), but the bug was reintroduced in QEMU 2.1. Revert to old behavior and report CPU speed as 2000 MHz instead of unknown. Signed-off-by: Eduardo Habkost <ehabkost@redhat.com> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--hw/i386/smbios.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/hw/i386/smbios.c b/hw/i386/smbios.c
index ae7032adda..12d213769d 100644
--- a/hw/i386/smbios.c
+++ b/hw/i386/smbios.c
@@ -618,8 +618,9 @@ static void smbios_build_type_4_table(unsigned instance)
SMBIOS_TABLE_SET_STR(4, processor_version_str, type4.version);
t->voltage = 0;
t->external_clock = cpu_to_le16(0); /* Unknown */
- t->max_speed = cpu_to_le16(0); /* Unknown */
- t->current_speed = cpu_to_le16(0); /* Unknown */
+ /* SVVP requires max_speed and current_speed to not be unknown. */
+ t->max_speed = cpu_to_le16(2000); /* 2000 MHz */
+ t->current_speed = cpu_to_le16(2000); /* 2000 MHz */
t->status = 0x41; /* Socket populated, CPU enabled */
t->processor_upgrade = 0x01; /* Other */
t->l1_cache_handle = cpu_to_le16(0xFFFF); /* N/A */