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

[Xen-devel] [XTF PATCH] XSA-186: Work around suspected Broadwell TLB erratum



Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
 tests/xsa-186/main.c | 23 +++++++++++++++++++++++
 1 file changed, 23 insertions(+)

diff --git a/tests/xsa-186/main.c b/tests/xsa-186/main.c
index f2bc8f6..fe7e98b 100644
--- a/tests/xsa-186/main.c
+++ b/tests/xsa-186/main.c
@@ -144,6 +144,29 @@ void test_main(void)
     memcpy(stub, insn_buf_start, insn_buf_end - insn_buf_start);
 
     /*
+     * Work around suspected Broadwell TLB Erratum
+     *
+     * Occasionally, this test failes with:
+     *
+     *   --- Xen Test Framework ---
+     *   Environment: HVM 64bit (Long mode 4 levels)
+     *   XSA-186 PoC
+     *   ******************************
+     *   PANIC: Unhandled exception at 0008:fffffffffffffffa
+     *   Vec 14 #PF[-I-sr-] %cr2 fffffffffffffffa
+     *   ******************************
+     *
+     * on Broadwell hardware.  The mapping is definitely present as the
+     * memcpy() has already succeeded.  Inserting an invlpg resolves the
+     * issue, sugguesting that there is a race conditon between dTLB/iTLB
+     * handling.
+     *
+     * Work around the issue for now, to avoid intermittent OSSTest failures
+     * from blocking pushes of unrelated changes.
+     */
+    invlpg(stub);
+
+    /*
      * Execute the stub.
      *
      * Intel CPUs are happy doing this for 32 and 64bit.  AMD CPUs are happy
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.