diff options
author | Eric Hankland <ehankland@google.com> | 2019-07-18 11:38:18 -0700 |
---|---|---|
committer | Paolo Bonzini <pbonzini@redhat.com> | 2019-07-20 09:00:48 +0200 |
commit | 30cd8604323dbaf20a80e797fe7057f5b02e394d (patch) | |
tree | 53a0ecd235eb3805293d3be074d72f9ecf57403f /Documentation | |
parent | 88dddc11a8d6b09201b4db9d255b3394d9bc9e57 (diff) | |
download | linux-stable-30cd8604323dbaf20a80e797fe7057f5b02e394d.tar.gz linux-stable-30cd8604323dbaf20a80e797fe7057f5b02e394d.tar.bz2 linux-stable-30cd8604323dbaf20a80e797fe7057f5b02e394d.zip |
KVM: x86: Add fixed counters to PMU filter
Updates KVM_CAP_PMU_EVENT_FILTER so it can also whitelist or blacklist
fixed counters.
Signed-off-by: Eric Hankland <ehankland@google.com>
[No need to check padding fields for zero. - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/virtual/kvm/api.txt | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/Documentation/virtual/kvm/api.txt b/Documentation/virtual/kvm/api.txt index 2cd6250b2896..e54a3f51ddc5 100644 --- a/Documentation/virtual/kvm/api.txt +++ b/Documentation/virtual/kvm/api.txt @@ -4090,17 +4090,22 @@ Parameters: struct kvm_pmu_event_filter (in) Returns: 0 on success, -1 on error struct kvm_pmu_event_filter { - __u32 action; - __u32 nevents; - __u64 events[0]; + __u32 action; + __u32 nevents; + __u32 fixed_counter_bitmap; + __u32 flags; + __u32 pad[4]; + __u64 events[0]; }; This ioctl restricts the set of PMU events that the guest can program. The argument holds a list of events which will be allowed or denied. The eventsel+umask of each event the guest attempts to program is compared against the events field to determine whether the guest should have access. -This only affects general purpose counters; fixed purpose counters can -be disabled by changing the perfmon CPUID leaf. +The events field only controls general purpose counters; fixed purpose +counters are controlled by the fixed_counter_bitmap. + +No flags are defined yet, the field must be zero. Valid values for 'action': #define KVM_PMU_EVENT_ALLOW 0 |