1 | /* This file is legitimately included multiple times. */ |
---|
2 | /*#ifndef __XEN_PERFC_DEFN_H__*/ |
---|
3 | /*#define __XEN_PERFC_DEFN_H__*/ |
---|
4 | |
---|
5 | PERFCOUNTER_ARRAY(exceptions, "exceptions", 32) |
---|
6 | |
---|
7 | #define VMX_PERF_EXIT_REASON_SIZE 44 |
---|
8 | #define VMX_PERF_VECTOR_SIZE 0x20 |
---|
9 | PERFCOUNTER_ARRAY(vmexits, "vmexits", VMX_PERF_EXIT_REASON_SIZE) |
---|
10 | PERFCOUNTER_ARRAY(cause_vector, "cause vector", VMX_PERF_VECTOR_SIZE) |
---|
11 | |
---|
12 | #define SVM_PERF_EXIT_REASON_SIZE (1+136) |
---|
13 | PERFCOUNTER_ARRAY(svmexits, "SVMexits", SVM_PERF_EXIT_REASON_SIZE) |
---|
14 | |
---|
15 | PERFCOUNTER(seg_fixups, "segmentation fixups") |
---|
16 | |
---|
17 | PERFCOUNTER(apic_timer, "apic timer interrupts") |
---|
18 | |
---|
19 | PERFCOUNTER(domain_page_tlb_flush, "domain page tlb flushes") |
---|
20 | |
---|
21 | PERFCOUNTER(calls_to_mmuext_op, "calls to mmuext_op") |
---|
22 | PERFCOUNTER(num_mmuext_ops, "mmuext ops") |
---|
23 | PERFCOUNTER(calls_to_mmu_update, "calls to mmu_update") |
---|
24 | PERFCOUNTER(num_page_updates, "page updates") |
---|
25 | PERFCOUNTER(calls_to_update_va, "calls to update_va_map") |
---|
26 | PERFCOUNTER(page_faults, "page faults") |
---|
27 | PERFCOUNTER(copy_user_faults, "copy_user faults") |
---|
28 | |
---|
29 | PERFCOUNTER(map_domain_page_count, "map_domain_page count") |
---|
30 | PERFCOUNTER(ptwr_emulations, "writable pt emulations") |
---|
31 | |
---|
32 | PERFCOUNTER(exception_fixed, "pre-exception fixed") |
---|
33 | |
---|
34 | |
---|
35 | /* Shadow counters */ |
---|
36 | PERFCOUNTER(shadow_alloc, "calls to shadow_alloc") |
---|
37 | PERFCOUNTER(shadow_alloc_tlbflush, "shadow_alloc flushed TLBs") |
---|
38 | |
---|
39 | /* STATUS counters do not reset when 'P' is hit */ |
---|
40 | PERFSTATUS(shadow_alloc_count, "number of shadow pages in use") |
---|
41 | PERFCOUNTER(shadow_free, "calls to shadow_free") |
---|
42 | PERFCOUNTER(shadow_prealloc_1, "shadow recycles old shadows") |
---|
43 | PERFCOUNTER(shadow_prealloc_2, "shadow recycles in-use shadows") |
---|
44 | PERFCOUNTER(shadow_linear_map_failed, "shadow hit read-only linear map") |
---|
45 | PERFCOUNTER(shadow_a_update, "shadow A bit update") |
---|
46 | PERFCOUNTER(shadow_ad_update, "shadow A&D bit update") |
---|
47 | PERFCOUNTER(shadow_fault, "calls to shadow_fault") |
---|
48 | PERFCOUNTER(shadow_fault_fast_gnp, "shadow_fault fast path n/p") |
---|
49 | PERFCOUNTER(shadow_fault_fast_mmio, "shadow_fault fast path mmio") |
---|
50 | PERFCOUNTER(shadow_fault_fast_fail, "shadow_fault fast path error") |
---|
51 | PERFCOUNTER(shadow_fault_bail_bad_gfn, "shadow_fault guest bad gfn") |
---|
52 | PERFCOUNTER(shadow_fault_bail_not_present, |
---|
53 | "shadow_fault guest not-present") |
---|
54 | PERFCOUNTER(shadow_fault_bail_nx, "shadow_fault guest NX fault") |
---|
55 | PERFCOUNTER(shadow_fault_bail_ro_mapping, "shadow_fault guest R/W fault") |
---|
56 | PERFCOUNTER(shadow_fault_bail_user_supervisor, |
---|
57 | "shadow_fault guest U/S fault") |
---|
58 | PERFCOUNTER(shadow_fault_emulate_read, "shadow_fault emulates a read") |
---|
59 | PERFCOUNTER(shadow_fault_emulate_write, "shadow_fault emulates a write") |
---|
60 | PERFCOUNTER(shadow_fault_emulate_failed, "shadow_fault emulator fails") |
---|
61 | PERFCOUNTER(shadow_fault_emulate_stack, "shadow_fault emulate stack write") |
---|
62 | PERFCOUNTER(shadow_fault_mmio, "shadow_fault handled as mmio") |
---|
63 | PERFCOUNTER(shadow_fault_fixed, "shadow_fault fixed fault") |
---|
64 | PERFCOUNTER(shadow_ptwr_emulate, "shadow causes ptwr to emulate") |
---|
65 | PERFCOUNTER(shadow_validate_gl1e_calls, "calls to shadow_validate_gl1e") |
---|
66 | PERFCOUNTER(shadow_validate_gl2e_calls, "calls to shadow_validate_gl2e") |
---|
67 | PERFCOUNTER(shadow_validate_gl3e_calls, "calls to shadow_validate_gl3e") |
---|
68 | PERFCOUNTER(shadow_validate_gl4e_calls, "calls to shadow_validate_gl4e") |
---|
69 | PERFCOUNTER(shadow_hash_lookups, "calls to shadow_hash_lookup") |
---|
70 | PERFCOUNTER(shadow_hash_lookup_head, "shadow hash hit in bucket head") |
---|
71 | PERFCOUNTER(shadow_hash_lookup_miss, "shadow hash misses") |
---|
72 | PERFCOUNTER(shadow_get_shadow_status, "calls to get_shadow_status") |
---|
73 | PERFCOUNTER(shadow_hash_inserts, "calls to shadow_hash_insert") |
---|
74 | PERFCOUNTER(shadow_hash_deletes, "calls to shadow_hash_delete") |
---|
75 | PERFCOUNTER(shadow_writeable, "shadow removes write access") |
---|
76 | PERFCOUNTER(shadow_writeable_h_1, "shadow writeable: 32b w2k3") |
---|
77 | PERFCOUNTER(shadow_writeable_h_2, "shadow writeable: 32pae w2k3") |
---|
78 | PERFCOUNTER(shadow_writeable_h_3, "shadow writeable: 64b w2k3") |
---|
79 | PERFCOUNTER(shadow_writeable_h_4, "shadow writeable: 32b linux low") |
---|
80 | PERFCOUNTER(shadow_writeable_h_5, "shadow writeable: 32b linux high") |
---|
81 | PERFCOUNTER(shadow_writeable_bf, "shadow writeable brute-force") |
---|
82 | PERFCOUNTER(shadow_mappings, "shadow removes all mappings") |
---|
83 | PERFCOUNTER(shadow_mappings_bf, "shadow rm-mappings brute-force") |
---|
84 | PERFCOUNTER(shadow_early_unshadow, "shadow unshadows for fork/exit") |
---|
85 | PERFCOUNTER(shadow_unshadow, "shadow unshadows a page") |
---|
86 | PERFCOUNTER(shadow_up_pointer, "shadow unshadow by up-pointer") |
---|
87 | PERFCOUNTER(shadow_unshadow_bf, "shadow unshadow brute-force") |
---|
88 | PERFCOUNTER(shadow_get_page_fail, "shadow_get_page_from_l1e failed") |
---|
89 | PERFCOUNTER(shadow_guest_walk, "shadow walks guest tables") |
---|
90 | PERFCOUNTER(shadow_invlpg, "shadow emulates invlpg") |
---|
91 | PERFCOUNTER(shadow_invlpg_fault, "shadow invlpg faults") |
---|
92 | |
---|
93 | |
---|
94 | /*#endif*/ /* __XEN_PERFC_DEFN_H__ */ |
---|