This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


[Xen-devel] dealing with ill DMI table pointer

To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] dealing with ill DMI table pointer
From: "Jan Beulich" <jbeulich@xxxxxxxxxx>
Date: Tue, 07 Aug 2007 13:46:38 +0100
Delivery-date: Tue, 07 Aug 2007 05:42:59 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
On at least one system we see the DMI table being located in what E820 reports
as usable RAM. Obviously, native has no immediate issue with this as it (a) 
the tables only at boot and (b) has no problem ioremap-ing RAM pages. A Xen
kernel, otoh, is likely to die because of this unless it happens to own the 

The only reasonable workaround I can see would be to have Xen look up the
DMI table and alter the E820 map by hand if needed (and also avoid to destroy
the information contained therein, implying that this must be done pretty 

The only other alternative I see would be to simply say: Bad luck, get a BIOS
update. But the DMI code in Linux clearly says that this is not a unique 
so having some kind of workaround to at least gracefully fail dmi_scan_machine()
might be desirable, but would seem to require propagating an error code from
set_fixmap() and changing this function to use hypercalls instead of direct page
table writes.


Xen-devel mailing list

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