* Olivier Galibert <galibert@xxxxxxxxx> wrote: > On Wed, Apr 06, 2011 at 11:33:33AM +0200, Ingo Molnar wrote: > > Examples: X11 and GCC - both were struggling for years to break through magic > > invisible barriers of growth and IMHO a lot of it had to do with the lack of > > code (and development model) cleanliness. > > A large part of what's killing X11 and qemu is the decomposition in > multiple trees and the requirement that every version must work with > every other version. > > For X11 you have: > - the server > - the protocol headers > - the individual 2D drivers > - libdrm > - the kernel > - mesa > - the video decoding driver/libs > > For qemu you have: > - qemu > - qemu-kvm > - the kernel > - libvirt > - seabios > > Any reaching change ends up hitting most of the trees, with all to > coordination that means. And in any case you're supposed to handle > any version of the other components. Splitting up a project into several trees, often unnecessarily, is a self-inflicted wound really. Smaller projects can hurt from that as well: a well-known example is oprofile. Pointing to the stupidity of overmodularization is one of my pet peeves, i consider it a "development model cleanliness" bug that needlessly exposes OSS projects to the negative effects of technical and social forks and complicates/shackles them. I flamed^W argued about it before, in the KVM / Qemu context as well. There are good examples of successful, highly integrated projects: - FreeBSD - it has achieved Linux-alike results with a fraction of the manpower - Android - on the desktop it has achieved much more than Linux, with a fraction of the manpower And that concept can be brought to its logical conclusion: i think it's only a matter of time until someone takes the Linux kernel, integrates klibc and a toolchain into it with some good initial userspace and goes wild with that concept, as a single, sane, 100% self-hosting and self-sufficient OSS project, tracking the release schedule of the Linux kernel. It might not happen on PC hardware (which is *way* too OSS-hostile), but it will eventually happen IMO. It's the eventual OSS killer feature and weirdly enough no-one has tried it yet. (Android comes close in a sense) Thanks, Ingo -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html