Re: KVM PMU virtualization

Ingo Molnar
2010-02-26T08:43:21Z

* Joerg Roedel <joro@8bytes.org> wrote:

> I personally don't like a self-defined event-set as the only solution
> because that would probably only work with linux and perf. [...]

The 'soft-PMU' i suggested is transparent on the guest side - if you want to
enable non-Linux and legacy-Linux.

It's basically a PMU interface provided to the guest by catching the right MSR
accesses, implemented via perf_event_create_kernel_counter()/etc. on the host
side.

Note that the 'soft PMU' still sucks from a design POV as there's no generic
hw interface to the PMU. So there would have to be a 'soft AMD' and a 'soft
Intel' PMU driver at minimum.

Far cleaner would be to expose it via hypercalls to guest OSs that are
interested in instrumentation. That way it could also transparently integrate
with tracing, probes, etc. It would also be wiser to first concentrate on
improving Linux<->Linux guest/host combos before gutting the design just to
fit Windows into the picture ...

Ingo