KVM: PMU: warn when pin control is set in eventsel msr
Print warning once if pin control bit is set in eventsel msr since emulation does not support it yet. Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
parent
9ee73970c0
commit
a7b9d2ccc3
2 changed files with 4 additions and 0 deletions
|
@ -23,6 +23,7 @@
|
||||||
#define ARCH_PERFMON_EVENTSEL_USR (1ULL << 16)
|
#define ARCH_PERFMON_EVENTSEL_USR (1ULL << 16)
|
||||||
#define ARCH_PERFMON_EVENTSEL_OS (1ULL << 17)
|
#define ARCH_PERFMON_EVENTSEL_OS (1ULL << 17)
|
||||||
#define ARCH_PERFMON_EVENTSEL_EDGE (1ULL << 18)
|
#define ARCH_PERFMON_EVENTSEL_EDGE (1ULL << 18)
|
||||||
|
#define ARCH_PERFMON_EVENTSEL_PIN_CONTROL (1ULL << 19)
|
||||||
#define ARCH_PERFMON_EVENTSEL_INT (1ULL << 20)
|
#define ARCH_PERFMON_EVENTSEL_INT (1ULL << 20)
|
||||||
#define ARCH_PERFMON_EVENTSEL_ANY (1ULL << 21)
|
#define ARCH_PERFMON_EVENTSEL_ANY (1ULL << 21)
|
||||||
#define ARCH_PERFMON_EVENTSEL_ENABLE (1ULL << 22)
|
#define ARCH_PERFMON_EVENTSEL_ENABLE (1ULL << 22)
|
||||||
|
|
|
@ -210,6 +210,9 @@ static void reprogram_gp_counter(struct kvm_pmc *pmc, u64 eventsel)
|
||||||
unsigned config, type = PERF_TYPE_RAW;
|
unsigned config, type = PERF_TYPE_RAW;
|
||||||
u8 event_select, unit_mask;
|
u8 event_select, unit_mask;
|
||||||
|
|
||||||
|
if (eventsel & ARCH_PERFMON_EVENTSEL_PIN_CONTROL)
|
||||||
|
printk_once("kvm pmu: pin control bit is ignored\n");
|
||||||
|
|
||||||
pmc->eventsel = eventsel;
|
pmc->eventsel = eventsel;
|
||||||
|
|
||||||
stop_counter(pmc);
|
stop_counter(pmc);
|
||||||
|
|
Loading…
Add table
Reference in a new issue