lkml.org 
[lkml]   [2010]   [Oct]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 5/8] KVM: don't touch vcpu stat after async pf is complete
On Thu, Oct 28, 2010 at 03:35:13PM +0800, Xiao Guangrong wrote:
> On 10/27/2010 06:44 PM, Gleb Natapov wrote:
> > On Wed, Oct 27, 2010 at 05:05:57PM +0800, Xiao Guangrong wrote:
> >> Don't make a KVM_REQ_UNHALT request after async pf is completed since it
> >> can break guest's 'halt' instruction.
> >>
> > Why is it a problem? CPU may be unhalted by different events so OS
> > shouldn't depend on it.
> >
>
> We don't know how guest OS handles it after HLT instruction is completed,
> according to X86's spec, only NMI/INTR/RESET/INIT/SMI can break halt state,
> it violations the hardware behavior if we allow other event break this
> state. Your opinion? :-)
I agree in principle, but since SMI (which is completely out of guest OS
control) can cause CPU to exit halt, in practice OS can't rely on CPU to
be unhalted only by events controlled by OS itself. In the past we had a
bug that any timer even unhalted vcpu even when timer interrupt was masked.
The only practical problem it caused was that vcpu that executed cli;
1: hlt; jmp 1b sequence still consumed host cpu time. That said I am not
against fixing it if the fix is easy. Your current fix though relies on
patch 4 that I have problem with.

--
Gleb.


\
 
 \ /
  Last update: 2010-10-28 09:43    [W:0.050 / U:0.548 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site