User: Password:
|
|
Subscribe / Log in / New account

KVM, QEMU, and kernel project management

KVM, QEMU, and kernel project management

Posted Mar 26, 2010 9:58 UTC (Fri) by mingo (subscriber, #31122)
In reply to: KVM, QEMU, and kernel project management by jcm
Parent article: KVM, QEMU, and kernel project management

  No offense intended toward Ingo, but there really isn't a huge
  insurmountable technical challenge here. Both Avi and Daniel have
  suggested perfectly valid technology fixes (that just happen to
  not be exactly what Ingo asked for, but are not invalid either):

(No offense taken at all!)

Even ignoring my opinion that those solutions are inadequate, multiple people on the list expressed their opinion that it's inadequate.

One of the concerns expressed against Avi's suggestion was that having to modify the guest user-space to export data creates a lot of deployment burden and is also guest-visible (for example if an UDP port is needed then networking is needed in the guest, plus it takes away a slot from the guest UDP port space).

Such kind of burden, even if it's technically equivalent otherwise, can make or break the viability of an instrumentation solution. (instrumentation is all about being able to get its stuff with minimal effect on the observed system. The whole point of 'perf kvm' is to observe the guest externally.)

Also, allowing to unify/mount the guest VFS into the host VFS was one out of two main areas of contention. The other one was the lack of kernel-provided enumeration for vcpu contexts.

The solution offered was to enumerate voluntarily in user-space via a ~/.qemu/ socket mechanism - but that approach has a number of problems beyond being tied to Qemu. A profiling/RAS tool wants to be able to discover and connect to any KVM context, not just Qemu enumerated ones.

It's as if 'ps' was implemented not by asking the kernel about what tasks are running in the system - but each app voluntarily registering themselves in some /var registry. Such schemes are fundamentally fragile and instrumentation code shies away from that for good reasons.

Not only was there disagreement, our concerns weren't even accepted as valid concerns and were brushed aside and labelled 'red herring'. It's not possible to make progress in such an environment of discussion.

Thanks, Ingo


(Log in to post comments)

KVM, QEMU, and kernel project management

Posted Mar 31, 2010 13:36 UTC (Wed) by gdamjan (subscriber, #33634) [Link]

But you still need a special kernel in the guest, right? - a Linux kernel even.

So,
and considering there's a standardized host-guest communication channel now (virtio-ring I think), can't the perf support be in the guest kernel?

KVM, QEMU, and kernel project management

Posted Apr 1, 2010 20:57 UTC (Thu) by oak (guest, #2786) [Link]

What about other tracing solutions?

For example hypervisor & host tracing was presented for LTT already in 2008:
http://lttng.org/files/papers/desnoyers-ols2008.pdf

The LTTV UI for LTT trace data has support for merging different (GB sized) traces based on the trace clock/timestamps. Good UI is crucial for making sense of the data, especially if one has several guests running at the same time.


Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds