public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Anthony Liguori <anthony@codemonkey.ws>
To: Avi Kivity <avi@redhat.com>
Cc: Huang Ying <ying.huang@intel.com>,
	kvm@vger.kernel.org, linux-kernel@vger.kernel.org,
	Andi Kleen <andi@firstfloor.org>
Subject: Re: [PATCH -v2] Add MCE support to KVM
Date: Wed, 22 Apr 2009 08:32:15 -0500	[thread overview]
Message-ID: <49EF1C5F.3070805@codemonkey.ws> (raw)
In-Reply-To: <49EEB1BC.7020709@redhat.com>

Avi Kivity wrote:
>
> The refactoring, absolutely.  But if I have kernel support for zero 
> copy tomorrow, do I wait until qemu completes refactoring the VLAN 
> API, or do I hack something in so I can test it and get the benefit to 
> users?

Why can't we do this in upstream QEMU though?  Part of the point I'm 
trying to make here is that what QEMU is can be flexible.  We can find 
ways to include functionality that might not be ready for prime time by 
making it conditionally compiled, only available when using KVM, etc.  
It's all open for discussion.  So I'll be quite blunt about it, what 
needs to change about what QEMU takes and doesn't take in order to get 
rid of kvm-userspace?

Experimentation is a good thing.  It's also important to do things the 
right way as early as possible though because the longer users depend on 
something, the harder it is to change later.  I think it's easier to 
strike that balance in upstream QEMU than trying to port things from 
kvm-userspace over to QEMU after the fact.

>>
>> The only reasonable things to do IMHO is for as much as humanly 
>> possible to be deferred to QEMU or for you to comes to terms with 
>> your role as a defacto QEMU maintainer and start pushing back more on 
>> patch sets that don't take into consideration TCG/non-KVM 
>> environments :-)
>
> I do that whenever possible -- and it most often is possible.
>
> But neither kvm nor tcg are not going to be supersets of the other.  
> Of course qemu is not a subset of kvm as it has a much wider 
> target/host variety.  But also kvm will always have features that tcg 
> does not have.  For example AVX is easy to implement with a few lines 
> in the kernel and qemu, but would take a massive effort in tcg.  It 
> would have a large performance impact for AVX-enabled 
> apps/guests/hosts combinations, not so much for tcg.
>
> kvm wants features for large-scale production deployment.  This means 
> focus on performance and managebility.  qemu/tcg is more for hobbyist 
> use or as a developer tool for developing operating system kernels.  
> This means more focus on ease of use.

We can have KVM specific features in QEMU when that makes sense.  In the 
case of MCE, it doesn't make any sense because it's relatively simple 
and the implementation can be common given the right interfaces.

>>
>> MCE is a perfect example of something that really has no reason to go 
>> in via kvm-userspace since we have enough KVM support in upstream QEMU. 
>
> I agree.  But the requirement that everything in kvm have a 
> counterpart in tcg is not realistic.  The primary use of MCE for 
> example is used to allow a guest to survive bad hardware.  I don't see 
> this as being useful in any way on qemu/tcg.  A secondary is is to 
> debug mce handling in guests OSes; now this is useful with tcg, but 
> I'd hesitate to call it a requirement, it's more of a nice to have.

There is no requirement that everything have a counter part in TCG.

Regards,

Anthony Liguori

  reply	other threads:[~2009-04-22 13:32 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-04-17  7:29 [PATCH -v2] Add MCE support to KVM Huang Ying
2009-04-18 15:54 ` Anthony Liguori
2009-04-19  8:39   ` Avi Kivity
2009-04-21 16:06     ` Anthony Liguori
2009-04-21 16:19       ` Avi Kivity
2009-04-21 16:12     ` Anthony Liguori
2009-04-21 16:21       ` Avi Kivity
2009-04-21 19:55         ` Anthony Liguori
2009-04-21 20:00           ` Avi Kivity
2009-04-21 20:08             ` Anthony Liguori
2009-04-21 20:45               ` Avi Kivity
2009-04-21 21:16                 ` Anthony Liguori
2009-04-22  5:57                   ` Avi Kivity
2009-04-22 13:32                     ` Anthony Liguori [this message]
2009-04-22 13:58                       ` Avi Kivity
2009-04-22  2:32         ` Huang Ying
2009-04-20  1:19   ` Huang Ying
2009-04-20  3:57     ` Kyle Moffett
2009-04-20  5:04       ` Huang Ying
2009-04-20  5:30       ` Andi Kleen
2009-04-22  2:42       ` Gregory Haskins

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=49EF1C5F.3070805@codemonkey.ws \
    --to=anthony@codemonkey.ws \
    --cc=andi@firstfloor.org \
    --cc=avi@redhat.com \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=ying.huang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox