summaryrefslogtreecommitdiffstats
path: root/system/xen/xsa/xsa345-0002-x86-mm-Refactor-modify_xen_mappings-to-have-one-exit.patch
diff options
context:
space:
mode:
Diffstat (limited to 'system/xen/xsa/xsa345-0002-x86-mm-Refactor-modify_xen_mappings-to-have-one-exit.patch')
-rw-r--r--system/xen/xsa/xsa345-0002-x86-mm-Refactor-modify_xen_mappings-to-have-one-exit.patch68
1 files changed, 0 insertions, 68 deletions
diff --git a/system/xen/xsa/xsa345-0002-x86-mm-Refactor-modify_xen_mappings-to-have-one-exit.patch b/system/xen/xsa/xsa345-0002-x86-mm-Refactor-modify_xen_mappings-to-have-one-exit.patch
deleted file mode 100644
index 836bed681a..0000000000
--- a/system/xen/xsa/xsa345-0002-x86-mm-Refactor-modify_xen_mappings-to-have-one-exit.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 9f6f35b833d295acaaa2d8ff8cf309bf688cfd50 Mon Sep 17 00:00:00 2001
-From: Wei Liu <wei.liu2@citrix.com>
-Date: Sat, 11 Jan 2020 21:57:42 +0000
-Subject: [PATCH 2/3] x86/mm: Refactor modify_xen_mappings to have one exit
- path
-
-We will soon need to perform clean-ups before returning.
-
-No functional change.
-
-This is part of XSA-345.
-
-Reported-by: Hongyan Xia <hongyxia@amazon.com>
-Signed-off-by: Wei Liu <wei.liu2@citrix.com>
-Signed-off-by: Hongyan Xia <hongyxia@amazon.com>
-Signed-off-by: George Dunlap <george.dunlap@citrix.com>
-Acked-by: Jan Beulich <jbeulich@suse.com>
----
- xen/arch/x86/mm.c | 12 +++++++++---
- 1 file changed, 9 insertions(+), 3 deletions(-)
-
-diff --git a/xen/arch/x86/mm.c b/xen/arch/x86/mm.c
-index 133a393875..af726d3274 100644
---- a/xen/arch/x86/mm.c
-+++ b/xen/arch/x86/mm.c
-@@ -5570,6 +5570,7 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
- l1_pgentry_t *pl1e;
- unsigned int i;
- unsigned long v = s;
-+ int rc = -ENOMEM;
-
- /* Set of valid PTE bits which may be altered. */
- #define FLAGS_MASK (_PAGE_NX|_PAGE_RW|_PAGE_PRESENT)
-@@ -5611,7 +5612,8 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
- /* PAGE1GB: shatter the superpage and fall through. */
- pl2e = alloc_xen_pagetable();
- if ( !pl2e )
-- return -ENOMEM;
-+ goto out;
-+
- for ( i = 0; i < L2_PAGETABLE_ENTRIES; i++ )
- l2e_write(pl2e + i,
- l2e_from_pfn(l3e_get_pfn(*pl3e) +
-@@ -5666,7 +5668,8 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
- /* PSE: shatter the superpage and try again. */
- pl1e = alloc_xen_pagetable();
- if ( !pl1e )
-- return -ENOMEM;
-+ goto out;
-+
- for ( i = 0; i < L1_PAGETABLE_ENTRIES; i++ )
- l1e_write(&pl1e[i],
- l1e_from_pfn(l2e_get_pfn(*pl2e) + i,
-@@ -5795,7 +5798,10 @@ int modify_xen_mappings(unsigned long s, unsigned long e, unsigned int nf)
- flush_area(NULL, FLUSH_TLB_GLOBAL);
-
- #undef FLAGS_MASK
-- return 0;
-+ rc = 0;
-+
-+ out:
-+ return rc;
- }
-
- #undef flush_area
---
-2.25.1
-