aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/xen/perfc_defn.h
diff options
context:
space:
mode:
authormafetter@fleming.research <mafetter@fleming.research>2005-03-21 12:01:36 +0000
committermafetter@fleming.research <mafetter@fleming.research>2005-03-21 12:01:36 +0000
commitfb226ca216d418c1c6ceaf9871a4ef72e1fe7af6 (patch)
tree7a3f55adb849badfe6fecb0b50286d67f47fc67b /xen/include/xen/perfc_defn.h
parent8ed048c0d9fe4a045aeaa0a3525cff126448f10f (diff)
downloadxen-fb226ca216d418c1c6ceaf9871a4ef72e1fe7af6.tar.gz
xen-fb226ca216d418c1c6ceaf9871a4ef72e1fe7af6.tar.bz2
xen-fb226ca216d418c1c6ceaf9871a4ef72e1fe7af6.zip
bitkeeper revision 1.1236.32.14 (423eb7a0HqJL37tAErMbIXIQw6Q3Jg)
Added prediction of where to find the last writable PTE for a given page; greatly speeds up promotion of a page to be used as a page table. Removed some broken concepts of write protecting PDEs and higher level entries. To write protect a page, all we need to do is write protect all L1 entries that point at it. Fixed a bug with translated IO pages; gotta check that MFNs are really backed by RAM before we go looking in the frame_table for them... Signed-off-by: michael.fetterman@cl.cam.ac.uk
Diffstat (limited to 'xen/include/xen/perfc_defn.h')
-rw-r--r--xen/include/xen/perfc_defn.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/xen/include/xen/perfc_defn.h b/xen/include/xen/perfc_defn.h
index c7e3707bb0..5a8a09fa56 100644
--- a/xen/include/xen/perfc_defn.h
+++ b/xen/include/xen/perfc_defn.h
@@ -38,6 +38,7 @@ PERFSTATUS( shadow_l2_pages, "current # shadow L2 pages" )
PERFSTATUS( shadow_l1_pages, "current # shadow L1 pages" )
PERFSTATUS( hl2_table_pages, "current # hl2 pages" )
PERFSTATUS( snapshot_pages, "current # fshadow snapshot pages" )
+PERFSTATUS( writable_pte_predictions, "# writable pte predictions")
PERFCOUNTER_CPU(shadow_status_shortcut, "fastpath miss on shadow cache")
PERFCOUNTER_CPU(shadow_status_calls, "calls to ___shadow_status" )
@@ -73,4 +74,8 @@ PERFCOUNTER_CPU(write_fault_bail, "sf bailed due to write_fault
PERFCOUNTER_CPU(read_fault_bail, "sf bailed due to read_fault")
PERFCOUNTER_CPU(exception_fixed, "pre-exception fixed")
PERFCOUNTER_CPU(remove_write_access, "calls to remove_write_access")
-PERFCOUNTER_CPU(remove_write_access_easy, "easy outs of remove_write_access")
+PERFCOUNTER_CPU(remove_write_no_work, "no work in remove_write_access")
+PERFCOUNTER_CPU(remove_write_not_writable, "remove_write non-writable page")
+PERFCOUNTER_CPU(remove_write_fast_exit, "remove_write hit predicted entry")
+PERFCOUNTER_CPU(remove_write_predicted, "remove_write predict hit&exit")
+PERFCOUNTER_CPU(remove_write_bad_prediction, "remove_write bad prediction")