[SeaBIOS] Bug#678042: seabios - Please enable Xen support

Ian Campbell ijc at hellion.org.uk
Thu Jun 28 12:07:02 CEST 2012


On Wed, 2012-06-27 at 12:10 +0100, Ian Campbell wrote:
> SeaBIOS using a config derived from xen/tools/firmware/seabios-config
> (which is the 1.6.x based config we use) works for me while a config
> from "make defconfig" does not. I will investigate further.

CONFIG_USE_SMM is the culprit.

Xen doesn't support SMM mode for HVM guests. Seems like the best option
at this point is to disable SMM if usingXen().

I'll also include this in the series I'm about to send out.

8<---------------------------

>From a28c892b3c998e433de0816d5f862481690f5fe2 Mon Sep 17 00:00:00 2001
From: Ian Campbell <ian.campbell at citrix.com>
Date: Wed, 27 Jun 2012 16:15:15 +0100
Subject: [PATCH] SMM: Disable use of SMM when running under Xen

Xen does not support SMM mode.

Signed-off-by: Ian Campbell <ian.campbell at citrix.com>
---
 src/smm.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/src/smm.c b/src/smm.c
index 72e5e88..d0d1476 100644
--- a/src/smm.c
+++ b/src/smm.c
@@ -10,6 +10,7 @@
 #include "config.h" // CONFIG_*
 #include "ioport.h" // outb
 #include "pci_ids.h" // PCI_VENDOR_ID_INTEL
+#include "xen.h" // usingXen
 
 ASM32FLAT(
     ".global smm_relocation_start\n"
@@ -151,6 +152,8 @@ smm_init(void)
         return;
     if (!CONFIG_USE_SMM)
         return;
+    if (usingXen())
+	return;
 
     dprintf(3, "init smm\n");
     pci_find_init_device(smm_init_tbl, NULL);
-- 
1.7.2.5




-- 
Ian Campbell

If you suspect a man, don't employ him.





More information about the SeaBIOS mailing list