Re: [RFC] Unify KVM kernel-space and user-space code into a singleproject

From: Anthony Liguori
Date: Thu Mar 18 2010 - 10:39:11 EST


On 03/17/2010 03:10 AM, Ingo Molnar wrote:
* Anthony Liguori<anthony@xxxxxxxxxxxxx> wrote:

On 03/16/2010 12:39 PM, Ingo Molnar wrote:
If we look at the use-case, it's going to be something like, a user is
creating virtual machines and wants to get performance information about
them.

Having to run a separate tool like perf is not going to be what they would
expect they had to do. Instead, they would either use their existing GUI
tool (like virt-manager) or they would use their management interface
(either QMP or libvirt).

The complexity of interaction is due to the fact that perf shouldn't be a
stand alone tool. It should be a library or something with a programmatic
interface that another tool can make use of.
But ... a GUI interface/integration is of course possible too, and it's being
worked on.

perf is mainly a kernel developer tool, and kernel developers generally dont
use GUIs to do their stuff: which is the (sole) reason why its first ~850
commits of tools/perf/ were done without a GUI. We go where our developers
are.

In any case it's not an excuse to have no proper command-line tooling. In fact
if you cannot get simpler, more atomic command-line tooling right then you'll
probably doubly suck at doing a GUI as well.
It's about who owns the user interface.

If qemu owns the user interface, than we can satisfy this in a very simple
way by adding a perf monitor command. If we have to support third party
tools, then it significantly complicates things.
Of course illogical modularization complicates things 'significantly'.

Ok. Then apply this to the kernel. I'm then happy to take patches.

Regards,

Anthony Liguori

commit 84b84db054e83e7686b80fad9f8d2aa87aade1a1
Author: Anthony Liguori <aliguori@xxxxxxxxxx>
Date: Thu Mar 18 09:35:29 2010 -0500

Bring QEMU into the Linux kernel tree

Ingo is under the impression that this will result in a massive improvement in
the usability of QEMU.

Signed-off-by: Anthony Liguori <aliguori@xxxxxxxxxx>

diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 0000000..76cdb68
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,3 @@
+[submodule "tools/qemu"]
+ path = tools/qemu
+ url = git://git.qemu.org/qemu.git
diff --git a/MAINTAINERS b/MAINTAINERS
index 03f38c1..6275796 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -4427,6 +4427,12 @@ M: Robert Jarzmik <robert.jarzmik@xxxxxxx>
L: rtc-linux@xxxxxxxxxxxxxxxx
S: Maintained

+QEMU
+M: Anthony Liguori <aliguori@xxxxxxxxxx>
+L: qemu-devel@xxxxxxxxxx
+S: Maintained
+F: tools/qemu
+
QLOGIC QLA2XXX FC-SCSI DRIVER
M: Andrew Vasquez <andrew.vasquez@xxxxxxxxxx>
M: linux-driver@xxxxxxxxxx
diff --git a/tools/qemu b/tools/qemu
new file mode 160000
index 0000000..e5322f7
--- /dev/null
+++ b/tools/qemu
@@ -0,0 +1 @@
+Subproject commit e5322f76a72352eea8eb511390c27726b64e5a87