WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] x86: fix tboot after c/s 23013:65d26504e8

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] x86: fix tboot after c/s 23013:65d26504e843 (ACPI cleanup)
From: Xen patchbot-unstable <patchbot@xxxxxxx>
Date: Wed, 30 Mar 2011 21:50:13 +0100
Delivery-date: Wed, 30 Mar 2011 13:52:04 -0700
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/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/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 Jan Beulich <jbeulich@xxxxxxxxxx>
# Date 1301131804 0
# Node ID dd386a4b6595e1ee63acb7220f8884b7a8532b99
# Parent  ef8dd40422c8e238ac4d4745c1bb2ecfb55ed3ca
x86: fix tboot after c/s 23013:65d26504e843 (ACPI cleanup)

TXT code calls acpi_parse_dmar() with a transient copy of the DMAR
table, and hence storing the pointer for later reference was wrong.
Obtain the pointer in acpi_dmar_init() instead.

Signed-off-by: Jan Beulich <jbeulich@xxxxxxxxxx>
Tested-by: Gang Wei <gang.wei@xxxxxxxxx>
---


diff -r ef8dd40422c8 -r dd386a4b6595 xen/drivers/passthrough/vtd/dmar.c
--- a/xen/drivers/passthrough/vtd/dmar.c        Sat Mar 26 08:27:41 2011 +0000
+++ b/xen/drivers/passthrough/vtd/dmar.c        Sat Mar 26 09:30:04 2011 +0000
@@ -673,7 +673,6 @@
     u8 dmar_host_address_width;
     int ret = 0;
 
-    dmar_table = table;
     dmar = (struct acpi_table_dmar *)table;
 
     if ( !iommu_enabled )
@@ -762,6 +761,13 @@
 
 int __init acpi_dmar_init(void)
 {
+    unsigned long flags;
+
+    /* Disabling IRQs avoids cross-CPU TLB flush in map_pages_to_xen(). */
+    local_irq_save(flags);
+    acpi_get_table(ACPI_SIG_DMAR, 0, &dmar_table);
+    local_irq_restore(flags);
+
     return parse_dmar_table(acpi_parse_dmar);
 }
 

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] x86: fix tboot after c/s 23013:65d26504e843 (ACPI cleanup), Xen patchbot-unstable <=