mirror of
https://git.freebsd.org/ports.git
synced 2025-06-23 21:50:32 -04:00
42 lines
1.3 KiB
Diff
42 lines
1.3 KiB
Diff
From 8894a0c20d920aada305aade0591c1e77167b1db Mon Sep 17 00:00:00 2001
|
|
From: Jan Beulich <jbeulich@suse.com>
|
|
Date: Fri, 2 Jun 2017 15:21:27 +0100
|
|
Subject: [PATCH 2/4] gnttab: never create host mapping unless asked to
|
|
|
|
We shouldn't create a host mapping unless asked to even in the case of
|
|
mapping a granted MMIO page. In particular the mapping wouldn't be torn
|
|
down when processing the matching unmap request.
|
|
|
|
This is part of XSA-224.
|
|
|
|
Reported-by: Jan Beulich <jbeulich@suse.com>
|
|
Signed-off-by: Jan Beulich <jbeulich@suse.com>
|
|
---
|
|
xen/common/grant_table.c | 11 +++++++----
|
|
1 file changed, 7 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c
|
|
index 69cbdb6..452538e 100644
|
|
--- a/xen/common/grant_table.c
|
|
+++ b/xen/common/grant_table.c
|
|
@@ -911,10 +911,13 @@ __gnttab_map_grant_ref(
|
|
goto undo_out;
|
|
}
|
|
|
|
- rc = create_grant_host_mapping(
|
|
- op->host_addr, frame, op->flags, cache_flags);
|
|
- if ( rc != GNTST_okay )
|
|
- goto undo_out;
|
|
+ if ( op->flags & GNTMAP_host_map )
|
|
+ {
|
|
+ rc = create_grant_host_mapping(op->host_addr, frame, op->flags,
|
|
+ cache_flags);
|
|
+ if ( rc != GNTST_okay )
|
|
+ goto undo_out;
|
|
+ }
|
|
}
|
|
else if ( owner == rd || owner == dom_cow )
|
|
{
|
|
--
|
|
2.1.4
|
|
|