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

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Ingo Molnar
Date: Thursday, March 18, 2010 - 2:54 am

* Jes Sorensen <Jes.Sorensen@redhat.com> wrote:


Yes, exactly.

I was part of that nightmare so i know.


Yes. Please realize that what is behind it is a strikingly simple argument:

 "Once you have a single project to develop and maintain all is much better."


Btw., i made similar arguments to Avi about 3 years ago when it was going 
upstream, that qemu should be unified with KVM. This is more true today than 
ever.


I do not suggest forking Qemu at all, i suggest using the most natural 
development model for the KVM+Qemu shared project: a single repository.


Not if it's a unified project.


My experience as an external observer of the end result contradicts this.

Seemingly trivial usability changes to the KVM+Qemu combo are not being done 
often because they involve cross-discipline changes.

( _In this very thread_ there has been a somewhat self-defeating argument by 
  Anthony that multi-package scenario would 'significantly complicate' 
  matters. What more proof do we need to state the obvious? Keeping what
  has become one piece of technology over the years in two separate halves is
  obviously bad. )


The way we have gone about this in tools/perf/ is similar to the route picked 
by Git: we only use very lowlevel libraries available everywhere, and we 
provide optional wrappers to the rest.

We are also using the kernel's libraries so we rarely need to go outside to 
get some functionality.

I.e. it's a non-issue in practice and despite perf having an (optional) 
dependency on xmlto and docbook we dont include those packages nor do we force 
users to install particular versions of them.


gdb and gcc is clearly extrinsic to the kernel so why would we move them 
there?

I was talking about tools that are closely related to the kernel - where much 
of the development and actual use is in combination with the Linux kernel.

90%+ of the Qemu usecases are combined with Linux. (Yes, i know that you can 
run Qemu without KVM, and no, i dont think it matters in the grand scheme of 
things and most investment into Qemu comes from the KVM angle these days. In 
particular it for sure does not justify handicapping future KVM evolution so 
drastically.)


I know the size and scope of Qemu, i even hacked it - still my points remain. 
(my arguments are influenced and strengthened by that past hacking experience)


SeaBIOS is in essence a firmware, so it could either be loaded as such.

Just look at the qemu source code - the BIOSes are .bin images in 
qemu/pc-bios/ imported externally in essence.

Moving qemu to tools/kvm/ would not change that much. The firmware could 
become part of /lib/firmware/*.bin.

( That would probably be a more intelligent approach to the BIOS image import 
  problem as well. )


qemu-kvm branch is not similar to my proposal at all: it made KVM _more_ 
fragmented, not more unified. I.e. it was a move in the exact opposite 
direction and i'd expect such a move to fail.

In fact the failure of qemu-kvm supports my point rather explicitly: it 
demonstrates that extra packages and split development are actively harmful.

I speak about this as a person who has done successful unifications of split 
codebases and in my judgement this move would be significantly beneficial to 
KVM.

You cannot really validly reject this proposal with "It wont work" as it 
clearly has worked in other, comparable cases. You could only reject this with 
"I have tried it and it didnt work".

Think about it: a clean and hackable user-space component in tools/kvm/. It's 
very tempting :-)

	Ingo
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Ingo Molnar, (Thu Mar 18, 2:54 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Frank Ch. Eigler, (Thu Mar 18, 5:33 am)
Re: [PATCH] Enhance perf to collect KVM guest os statistic ..., Arnaldo Carvalho de Melo, (Thu Mar 18, 6:03 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Frank Ch. Eigler, (Thu Mar 18, 6:24 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Daniel P. Berrange, (Thu Mar 18, 6:44 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Frank Ch. Eigler, (Thu Mar 18, 7:39 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Thu Mar 18, 11:10 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Thu Mar 18, 11:20 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Frederic Weisbecker, (Thu Mar 18, 11:20 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Frank Ch. Eigler, (Thu Mar 18, 12:50 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Olivier Galibert, (Fri Mar 19, 2:52 am)
Re: [LKML] Re: [RFC] Unify KVM kernel-space and user-space ..., Konrad Rzeszutek Wilk, (Fri Mar 19, 6:56 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Andrea Arcangeli, (Fri Mar 19, 7:53 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Andrea Arcangeli, (Sat Mar 20, 7:59 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Olivier Galibert, (Sun Mar 21, 1:08 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Daniel P. Berrange, (Mon Mar 22, 5:37 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Daniel P. Berrange, (Mon Mar 22, 5:54 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Daniel P. Berrange, (Mon Mar 22, 6:05 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Richard W.M. Jones, (Mon Mar 22, 6:23 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Richard W.M. Jones, (Mon Mar 22, 7:01 am)
Re: [PATCH] Enhance perf to collect KVM guest os statistic ..., Arnaldo Carvalho de Melo, (Mon Mar 22, 9:44 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Frank Ch. Eigler, (Mon Mar 22, 10:17 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Mon Mar 22, 11:28 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Mon Mar 22, 11:30 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Mon Mar 22, 11:35 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Mon Mar 22, 11:41 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Mon Mar 22, 12:15 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Mon Mar 22, 12:18 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Andrea Arcangeli, (Mon Mar 22, 12:28 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Mon Mar 22, 12:29 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Daniel P. Berrange, (Mon Mar 22, 12:31 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Anthony Liguori, (Mon Mar 22, 12:33 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Daniel P. Berrange, (Mon Mar 22, 1:58 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Olivier Galibert, (Tue Mar 23, 2:46 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Bernd Petrovitsch, (Tue Mar 23, 3:48 am)
Re: [PATCH] Enhance perf to collect KVM guest os statistic ..., Arnaldo Carvalho de Melo, (Tue Mar 23, 6:15 am)
Re: [PATCH] Enhance perf to collect KVM guest os statistic ..., Arnaldo Carvalho de Melo, (Tue Mar 23, 7:10 am)
Re: [PATCH] Enhance perf to collect KVM guest os statistic ..., Arnaldo Carvalho de Melo, (Tue Mar 23, 7:29 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Javier Guerra Giraldez, (Tue Mar 23, 12:05 pm)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Daniel P. Berrange, (Wed Mar 24, 8:26 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Arnaldo Carvalho de Melo, (Wed Mar 24, 10:47 am)
Re: [RFC] Unify KVM kernel-space and user-space code into ..., Arnaldo Carvalho de Melo, (Wed Mar 24, 11:27 am)