aboutsummaryrefslogtreecommitdiff
path: root/system/xen/xsa/xsa328-post-xsa321-4.13-5.patch
diff options
context:
space:
mode:
Diffstat (limited to 'system/xen/xsa/xsa328-post-xsa321-4.13-5.patch')
-rw-r--r--system/xen/xsa/xsa328-post-xsa321-4.13-5.patch24
1 files changed, 24 insertions, 0 deletions
diff --git a/system/xen/xsa/xsa328-post-xsa321-4.13-5.patch b/system/xen/xsa/xsa328-post-xsa321-4.13-5.patch
new file mode 100644
index 0000000000000..60cfe6ccdf0d0
--- /dev/null
+++ b/system/xen/xsa/xsa328-post-xsa321-4.13-5.patch
@@ -0,0 +1,24 @@
+From: <security@xenproject.org>
+Subject: x86/alternative: introduce alternative_2
+
+It's based on alternative_io_2 without inputs or outputs but with an
+added memory clobber.
+
+This is part of XSA-321.
+
+Acked-by: Jan Beulich <jbeulich@suse.com>
+
+--- a/xen/include/asm-x86/alternative.h
++++ b/xen/include/asm-x86/alternative.h
+@@ -114,6 +114,11 @@ extern void alternative_branches(void);
+ #define alternative(oldinstr, newinstr, feature) \
+ asm volatile (ALTERNATIVE(oldinstr, newinstr, feature) : : : "memory")
+
++#define alternative_2(oldinstr, newinstr1, feature1, newinstr2, feature2) \
++ asm volatile (ALTERNATIVE_2(oldinstr, newinstr1, feature1, \
++ newinstr2, feature2) \
++ : : : "memory")
++
+ /*
+ * Alternative inline assembly with input.
+ *