aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/shadow.h
diff options
context:
space:
mode:
authorTim Deegan <Tim.Deegan@xensource.com>2006-11-01 10:31:11 +0000
committerTim Deegan <Tim.Deegan@xensource.com>2006-11-01 10:31:11 +0000
commit3369945812356d7f05796fcc68b0f28055d6a13e (patch)
tree621a96dd4a4dffcd9a5c7966dddaa8170c79e52e /xen/include/asm-x86/shadow.h
parent4861255f5c66ca4e5462b2bb6ff1f724f863550b (diff)
downloadxen-3369945812356d7f05796fcc68b0f28055d6a13e.tar.gz
xen-3369945812356d7f05796fcc68b0f28055d6a13e.tar.bz2
xen-3369945812356d7f05796fcc68b0f28055d6a13e.zip
[XEN] Prefetch multiple shadow entries per pagefault
Also, clean up the shadow *_propagate/fault routines. This allows us to quickly dispatch some guest-not-present faults and most MMIO accesses without taking the shadow lock. Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
Diffstat (limited to 'xen/include/asm-x86/shadow.h')
-rw-r--r--xen/include/asm-x86/shadow.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/xen/include/asm-x86/shadow.h b/xen/include/asm-x86/shadow.h
index d020251379..9e3bcb4caf 100644
--- a/xen/include/asm-x86/shadow.h
+++ b/xen/include/asm-x86/shadow.h
@@ -161,8 +161,10 @@ extern int shadow_audit_enable;
*/
#define SHOPT_WRITABLE_HEURISTIC 0x01 /* Guess at RW PTEs via linear maps */
#define SHOPT_EARLY_UNSHADOW 0x02 /* Unshadow l1s on fork or exit */
+#define SHOPT_FAST_FAULT_PATH 0x04 /* Fast-path MMIO and not-present */
+#define SHOPT_PREFETCH 0x08 /* Shadow multiple entries per fault */
-#define SHADOW_OPTIMIZATIONS 0x03
+#define SHADOW_OPTIMIZATIONS 0x0f
/* With shadow pagetables, the different kinds of address start