|
From: | Anthony Liguori |
Subject: | Re: [Qemu-devel] [libvirt] Modern CPU models cannot be used with libvirt |
Date: | Sun, 25 Mar 2012 13:01:34 -0500 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:11.0) Gecko/20120310 Thunderbird/11.0 |
On 03/25/2012 10:45 AM, Avi Kivity wrote:
On 03/25/2012 05:30 PM, Anthony Liguori wrote:On 03/25/2012 10:18 AM, Avi Kivity wrote:On 03/25/2012 05:07 PM, Anthony Liguori wrote:As log as qemu -nodefconfig -cpu westmere -M pc1.1-nodefconfig is going to eventually mean that -cpu westmere and -M pc-1.1 will not work. This is where QEMU is going. There is no reason that a normal user should ever use -nodefconfig.I don't think anyone or anything can use it, since it's meaning is not well defined. "not read any configuration files" where parts of qemu are continually moved out to configuration files means its a moving target.I think you assume that all QEMU users care about forward and backwards compatibility on the command line about all else. That's really not true. The libvirt folks have stated repeatedly that command line backwards compatibility is not critical to them. They are happy to require that a new version of QEMU requires a new version of libvirt.I don't think this came out of happiness, but despair. Seriously, keeping compatibility is one of the things we work hardest to achieve, and we can't manage it for our command line?
I hate to burst your bubble, but we struggle and rarely maintain the level of compatibility you're seeking to have.
I agree with you that we need to do a better job maintaining compatibility which is why I'm trying to clearly separate the things that we will never break from the things that will change over time.
-nodefconfig is a moving target. If you want stability, don't use it. If you just want to prevent the user's /etc/qemu stuff from being loaded, use -no-user-config.
I'm not saying that backwards compat isn't important--it is. But there are users who are happy to live on the bleeding edge.That's fine, but I don't see how -nodefconfig helps them. All it does is take away the building blocks (definitions) that they can use when setting up their configuration.
Yes, this is a feature.
Suppose we define the southbridge via a configuration file. Does that mean we don't load it any more?Yes. If I want the leanest and meanest version of QEMU that will start in the smallest number of milliseconds, then being able to tell QEMU not to load configuration files and create a very specific machine is a Good Thing. Why exclude users from being able to do this?So is this the point? Reducing startup time?
Yes, that's one reason. But maybe a user wants to have a whole different set of machine types and doesn't care to have the ones we provide. Why prevent a user from doing this?
Maybe they have a management tool that attempts to totally hide QEMU from the end user and exposes a different set of machine types. It's certainly more convenient for something like the Android emulator to only have to deal with QEMU knowing about the 4 types of machines that it specifically supports.
Regards, Anthony Liguori
[Prev in Thread] | Current Thread | [Next in Thread] |