aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/mm.h
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2013-05-02 17:04:14 +0200
committerJan Beulich <jbeulich@suse.com>2013-05-02 17:04:14 +0200
commitb965b31a6bce8c37e67e525fae6da0e2f26d6b2e (patch)
tree919b6133d2a6e2a1ef52e22bdf1979fb47812043 /xen/include/asm-x86/mm.h
parentf6b533308cd8a776bbb947f6084efc63218ad28b (diff)
downloadxen-b965b31a6bce8c37e67e525fae6da0e2f26d6b2e.tar.gz
xen-b965b31a6bce8c37e67e525fae6da0e2f26d6b2e.tar.bz2
xen-b965b31a6bce8c37e67e525fae6da0e2f26d6b2e.zip
x86: cleanup after making various page table manipulation operations preemptible
This drops the "preemptible" parameters from various functions where now they can't (or shouldn't, validated by assertions) be run in non- preemptible mode anymore, to prove that manipulations of at least L3 and L4 page tables and page table entries are now always preemptible, i.e. the earlier patches actually fulfill their purpose of fixing the resulting security issue. Signed-off-by: Jan Beulich <jbeulich@suse.com> Acked-by: Tim Deegan <tim@xen.org>
Diffstat (limited to 'xen/include/asm-x86/mm.h')
-rw-r--r--xen/include/asm-x86/mm.h9
1 files changed, 2 insertions, 7 deletions
diff --git a/xen/include/asm-x86/mm.h b/xen/include/asm-x86/mm.h
index 7a9273702a..6b367c0fee 100644
--- a/xen/include/asm-x86/mm.h
+++ b/xen/include/asm-x86/mm.h
@@ -364,15 +364,10 @@ static inline void put_page_and_type(struct page_info *page)
put_page(page);
}
-static inline int put_page_and_type_preemptible(struct page_info *page,
- int preemptible)
+static inline int put_page_and_type_preemptible(struct page_info *page)
{
- int rc = 0;
+ int rc = put_page_type_preemptible(page);
- if ( preemptible )
- rc = put_page_type_preemptible(page);
- else
- put_page_type(page);
if ( likely(rc == 0) )
put_page(page);
return rc;