aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/public/features.h
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2008-10-27 13:29:35 +0000
committerKeir Fraser <keir.fraser@citrix.com>2008-10-27 13:29:35 +0000
commit043e01a4f80f4af518008fa60ac73178d315b5e0 (patch)
treec85c3976c26cc7f9c4480a03b86d949002d96ebe /xen/include/public/features.h
parent2d80f0404ba4b82e27ada015f89170ff5ccd8e71 (diff)
downloadxen-043e01a4f80f4af518008fa60ac73178d315b5e0.tar.gz
xen-043e01a4f80f4af518008fa60ac73178d315b5e0.tar.bz2
xen-043e01a4f80f4af518008fa60ac73178d315b5e0.zip
x86: highmem handling assistance hypercalls
While looking at the origin of very frequently executed hypercalls I realized that the high page accessor functions in Linux would be good candidates to handle in the hypervisor - clearing or copying to/from a high page is a pretty frequent operation (provided there's enough memory in the domain). While prior to the first submission I only measured kernel builds (where the results are not hinting at a meaningful improvement), I now found time to do a more specific analysis: page clearing is being improved by about 20%, page copying doesn't seem to significantly benefit (though that may be an effect of the simplistic copy_page() implementation Xen currently uses) - nevertheless I would think that if one function is supported by the hypervisor, then the other should also be. Signed-off-by: Jan Beulich <jbeulich@novell.com>
Diffstat (limited to 'xen/include/public/features.h')
-rw-r--r--xen/include/public/features.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/xen/include/public/features.h b/xen/include/public/features.h
index 05fc5dc464..16e5ee4d49 100644
--- a/xen/include/public/features.h
+++ b/xen/include/public/features.h
@@ -59,6 +59,9 @@
/* x86: Does this Xen host support the MMU_PT_UPDATE_PRESERVE_AD hypercall? */
#define XENFEAT_mmu_pt_update_preserve_ad 5
+/* x86: Does this Xen host support the MMU_{CLEAR,COPY}_PAGE hypercall? */
+#define XENFEAT_highmem_assist 6
+
#define XENFEAT_NR_SUBMAPS 1
#endif /* __XEN_PUBLIC_FEATURES_H__ */