From ff398127e1e56de5b188aa623c4a519c5c66402c Mon Sep 17 00:00:00 2001 From: Leonardo Arena Date: Wed, 25 Oct 2017 14:12:25 +0000 Subject: main/xen: add leftover patch --- main/xen/APKBUILD | 2 +- main/xen/xsa230.patch | 38 ++++++++++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 main/xen/xsa230.patch diff --git a/main/xen/APKBUILD b/main/xen/APKBUILD index 04f7eca8ab..0dc6ce0318 100644 --- a/main/xen/APKBUILD +++ b/main/xen/APKBUILD @@ -4,7 +4,7 @@ # Maintainer: William Pitcock pkgname=xen pkgver=4.6.6 -pkgrel=0 +pkgrel=1 pkgdesc="Xen hypervisor" url="http://www.xen.org/" arch="x86_64" diff --git a/main/xen/xsa230.patch b/main/xen/xsa230.patch new file mode 100644 index 0000000000..c3b50c8aaa --- /dev/null +++ b/main/xen/xsa230.patch @@ -0,0 +1,38 @@ +From: Jan Beulich +Subject: gnttab: correct pin status fixup for copy + +Regardless of copy operations only setting GNTPIN_hst*, GNTPIN_dev* +also need to be taken into account when deciding whether to clear +_GTF_{read,writ}ing. At least for consistency with code elsewhere the +read part better doesn't use any mask at all. + +This is XSA-230. + +Signed-off-by: Jan Beulich +Reviewed-by: Andrew Cooper +diff --git a/xen/common/grant_table.c b/xen/common/grant_table.c +index ae34547..9c9d33c 100644 +--- a/xen/common/grant_table.c ++++ b/xen/common/grant_table.c +@@ -2107,10 +2107,10 @@ __release_grant_for_copy( + static void __fixup_status_for_copy_pin(const struct active_grant_entry *act, + uint16_t *status) + { +- if ( !(act->pin & GNTPIN_hstw_mask) ) ++ if ( !(act->pin & (GNTPIN_hstw_mask | GNTPIN_devw_mask)) ) + gnttab_clear_flag(_GTF_writing, status); + +- if ( !(act->pin & GNTPIN_hstr_mask) ) ++ if ( !act->pin ) + gnttab_clear_flag(_GTF_reading, status); + } + +@@ -2318,7 +2318,7 @@ __acquire_grant_for_copy( + + unlock_out_clear: + if ( !(readonly) && +- !(act->pin & GNTPIN_hstw_mask) ) ++ !(act->pin & (GNTPIN_hstw_mask | GNTPIN_devw_mask)) ) + gnttab_clear_flag(_GTF_writing, status); + + if ( !act->pin ) -- cgit v1.2.3