#include <linux/perf_event.h>
#include <linux/perf/arm_pmuv3.h>
Go to the source code of this file.
|
static bool | kvm_arm_support_pmu_v3 (void) |
|
static u64 | kvm_pmu_get_counter_value (struct kvm_vcpu *vcpu, u64 select_idx) |
|
static void | kvm_pmu_set_counter_value (struct kvm_vcpu *vcpu, u64 select_idx, u64 val) |
|
static u64 | kvm_pmu_valid_counter_mask (struct kvm_vcpu *vcpu) |
|
static void | kvm_pmu_vcpu_init (struct kvm_vcpu *vcpu) |
|
static void | kvm_pmu_vcpu_reset (struct kvm_vcpu *vcpu) |
|
static void | kvm_pmu_vcpu_destroy (struct kvm_vcpu *vcpu) |
|
static void | kvm_pmu_disable_counter_mask (struct kvm_vcpu *vcpu, u64 val) |
|
static void | kvm_pmu_enable_counter_mask (struct kvm_vcpu *vcpu, u64 val) |
|
static void | kvm_pmu_flush_hwstate (struct kvm_vcpu *vcpu) |
|
static void | kvm_pmu_sync_hwstate (struct kvm_vcpu *vcpu) |
|
static bool | kvm_pmu_should_notify_user (struct kvm_vcpu *vcpu) |
|
static void | kvm_pmu_update_run (struct kvm_vcpu *vcpu) |
|
static void | kvm_pmu_software_increment (struct kvm_vcpu *vcpu, u64 val) |
|
static void | kvm_pmu_handle_pmcr (struct kvm_vcpu *vcpu, u64 val) |
|
static void | kvm_pmu_set_counter_event_type (struct kvm_vcpu *vcpu, u64 data, u64 select_idx) |
|
static int | kvm_arm_pmu_v3_set_attr (struct kvm_vcpu *vcpu, struct kvm_device_attr *attr) |
|
static int | kvm_arm_pmu_v3_get_attr (struct kvm_vcpu *vcpu, struct kvm_device_attr *attr) |
|
static int | kvm_arm_pmu_v3_has_attr (struct kvm_vcpu *vcpu, struct kvm_device_attr *attr) |
|
static int | kvm_arm_pmu_v3_enable (struct kvm_vcpu *vcpu) |
|
static u64 | kvm_pmu_get_pmceid (struct kvm_vcpu *vcpu, bool pmceid1) |
|
static void | kvm_pmu_update_vcpu_events (struct kvm_vcpu *vcpu) |
|
static void | kvm_vcpu_pmu_restore_guest (struct kvm_vcpu *vcpu) |
|
static void | kvm_vcpu_pmu_restore_host (struct kvm_vcpu *vcpu) |
|
static void | kvm_vcpu_reload_pmu (struct kvm_vcpu *vcpu) |
|
static u8 | kvm_arm_pmu_get_pmuver_limit (void) |
|
static u64 | kvm_pmu_evtyper_mask (struct kvm *kvm) |
|
static void | kvm_vcpu_pmu_resync_el0 (void) |
|
static int | kvm_arm_set_default_pmu (struct kvm *kvm) |
|
static u8 | kvm_arm_pmu_get_max_counters (struct kvm *kvm) |
|
static u64 | kvm_vcpu_read_pmcr (struct kvm_vcpu *vcpu) |
|
◆ ARMV8_PMU_CYCLE_IDX
#define ARMV8_PMU_CYCLE_IDX (ARMV8_PMU_MAX_COUNTERS - 1) |
◆ kvm_arm_pmu_irq_initialized
#define kvm_arm_pmu_irq_initialized |
( |
|
v | ) |
(false) |
◆ kvm_pmu_is_3p5
#define kvm_pmu_is_3p5 |
( |
|
vcpu | ) |
({ false; }) |
◆ kvm_vcpu_has_pmu
#define kvm_vcpu_has_pmu |
( |
|
vcpu | ) |
({ false; }) |
◆ kvm_arm_pmu_get_max_counters()
static u8 kvm_arm_pmu_get_max_counters |
( |
struct kvm * |
kvm | ) |
|
|
inlinestatic |
◆ kvm_arm_pmu_get_pmuver_limit()
static u8 kvm_arm_pmu_get_pmuver_limit |
( |
void |
| ) |
|
|
inlinestatic |
◆ kvm_arm_pmu_v3_enable()
static int kvm_arm_pmu_v3_enable |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_arm_pmu_v3_get_attr()
static int kvm_arm_pmu_v3_get_attr |
( |
struct kvm_vcpu * |
vcpu, |
|
|
struct kvm_device_attr * |
attr |
|
) |
| |
|
inlinestatic |
◆ kvm_arm_pmu_v3_has_attr()
static int kvm_arm_pmu_v3_has_attr |
( |
struct kvm_vcpu * |
vcpu, |
|
|
struct kvm_device_attr * |
attr |
|
) |
| |
|
inlinestatic |
◆ kvm_arm_pmu_v3_set_attr()
static int kvm_arm_pmu_v3_set_attr |
( |
struct kvm_vcpu * |
vcpu, |
|
|
struct kvm_device_attr * |
attr |
|
) |
| |
|
inlinestatic |
◆ kvm_arm_set_default_pmu()
static int kvm_arm_set_default_pmu |
( |
struct kvm * |
kvm | ) |
|
|
inlinestatic |
◆ kvm_arm_support_pmu_v3()
static bool kvm_arm_support_pmu_v3 |
( |
void |
| ) |
|
|
inlinestatic |
◆ kvm_pmu_disable_counter_mask()
static void kvm_pmu_disable_counter_mask |
( |
struct kvm_vcpu * |
vcpu, |
|
|
u64 |
val |
|
) |
| |
|
inlinestatic |
◆ kvm_pmu_enable_counter_mask()
static void kvm_pmu_enable_counter_mask |
( |
struct kvm_vcpu * |
vcpu, |
|
|
u64 |
val |
|
) |
| |
|
inlinestatic |
◆ kvm_pmu_evtyper_mask()
static u64 kvm_pmu_evtyper_mask |
( |
struct kvm * |
kvm | ) |
|
|
inlinestatic |
◆ kvm_pmu_flush_hwstate()
static void kvm_pmu_flush_hwstate |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_pmu_get_counter_value()
static u64 kvm_pmu_get_counter_value |
( |
struct kvm_vcpu * |
vcpu, |
|
|
u64 |
select_idx |
|
) |
| |
|
inlinestatic |
◆ kvm_pmu_get_pmceid()
static u64 kvm_pmu_get_pmceid |
( |
struct kvm_vcpu * |
vcpu, |
|
|
bool |
pmceid1 |
|
) |
| |
|
inlinestatic |
◆ kvm_pmu_handle_pmcr()
static void kvm_pmu_handle_pmcr |
( |
struct kvm_vcpu * |
vcpu, |
|
|
u64 |
val |
|
) |
| |
|
inlinestatic |
◆ kvm_pmu_set_counter_event_type()
static void kvm_pmu_set_counter_event_type |
( |
struct kvm_vcpu * |
vcpu, |
|
|
u64 |
data, |
|
|
u64 |
select_idx |
|
) |
| |
|
inlinestatic |
◆ kvm_pmu_set_counter_value()
static void kvm_pmu_set_counter_value |
( |
struct kvm_vcpu * |
vcpu, |
|
|
u64 |
select_idx, |
|
|
u64 |
val |
|
) |
| |
|
inlinestatic |
◆ kvm_pmu_should_notify_user()
static bool kvm_pmu_should_notify_user |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_pmu_software_increment()
static void kvm_pmu_software_increment |
( |
struct kvm_vcpu * |
vcpu, |
|
|
u64 |
val |
|
) |
| |
|
inlinestatic |
◆ kvm_pmu_sync_hwstate()
static void kvm_pmu_sync_hwstate |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_pmu_update_run()
static void kvm_pmu_update_run |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_pmu_update_vcpu_events()
static void kvm_pmu_update_vcpu_events |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_pmu_valid_counter_mask()
static u64 kvm_pmu_valid_counter_mask |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_pmu_vcpu_destroy()
static void kvm_pmu_vcpu_destroy |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_pmu_vcpu_init()
static void kvm_pmu_vcpu_init |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_pmu_vcpu_reset()
static void kvm_pmu_vcpu_reset |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_vcpu_pmu_restore_guest()
static void kvm_vcpu_pmu_restore_guest |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_vcpu_pmu_restore_host()
static void kvm_vcpu_pmu_restore_host |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_vcpu_pmu_resync_el0()
static void kvm_vcpu_pmu_resync_el0 |
( |
void |
| ) |
|
|
inlinestatic |
◆ kvm_vcpu_read_pmcr()
static u64 kvm_vcpu_read_pmcr |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |
◆ kvm_vcpu_reload_pmu()
static void kvm_vcpu_reload_pmu |
( |
struct kvm_vcpu * |
vcpu | ) |
|
|
inlinestatic |