public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
From: Marcelo Tosatti <mtosatti@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: Avi Kivity <avi@qumranet.com>, kvm@vger.kernel.org
Subject: Re: [patch 0/7] force the TSC unreliable by reporting C2 state
Date: Wed, 18 Jun 2008 17:40:42 -0300	[thread overview]
Message-ID: <20080618204042.GA15981@dmt.cnet> (raw)
In-Reply-To: <48596B85.7090008@codemonkey.ws>

On Wed, Jun 18, 2008 at 03:09:41PM -0500, Anthony Liguori wrote:
> Marcelo Tosatti wrote:
>> Avi, I don't think this causes such a huge performance regression. NOHZ
>> makes the frequency of timer reads go down significantly.
>>   
>
> Have we yet determined why the TSC is so unstable in the first place?   
> In theory, it should be relatively stable on single-node Intel and  
> Barcelona chips.

If the host enters C2/C3, or changes CPU frequency, it becomes
unreliable as a clocksource and there's no guarantee the guest will
detect that.

Also, as mentioned earlier, large systems with clustered APIC have
unstable TSC.

We _could_ hook this fake-C2-state thing to the host TSC reliability:

1) Hook into Linux's mark_tsc_unstable().
2) On migration check if the destination host is using the TSC, if not, 
force a faked-C2-state.

Problem with 2) is that not all guests honour the ACPI _CST package
notification (which would change C2's latency time from an unusable
value to something usable). And now I don't think assuming the _CST
notification to work is a good thing (after we found out that for ex.
Ubuntu 7.10 kernel ignores it).


  reply	other threads:[~2008-06-18 20:41 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-18 16:42 [patch 0/7] force the TSC unreliable by reporting C2 state Marcelo Tosatti
2008-06-18 16:42 ` [patch 1/7] kvm: qemu: inform valid C2 state in ACPI table Marcelo Tosatti
2008-06-18 16:42 ` [patch 2/7] kvm: qemu: disable c2 via _CST notification Marcelo Tosatti
2008-06-18 16:42 ` [patch 3/7] libkvm: in-kernel C2 halt interface Marcelo Tosatti
2008-06-18 16:42 ` [patch 4/7] libkvm: handle_io return handler value Marcelo Tosatti
2008-06-18 16:42 ` [patch 5/7] qemu: kvm: unhalt vcpu0 on pit irq Marcelo Tosatti
2008-06-18 16:42 ` [patch 6/7] kvm: qemu: enable in-kernel C2 emulation / userspace emulation Marcelo Tosatti
2008-06-18 16:42 ` [patch 7/7] KVM: in-kernel ACPI C2 idle emulation Marcelo Tosatti
2008-06-23  3:01   ` Avi Kivity
2008-06-18 20:09 ` [patch 0/7] force the TSC unreliable by reporting C2 state Anthony Liguori
2008-06-18 20:40   ` Marcelo Tosatti [this message]
2008-06-18 21:02     ` Anthony Liguori
2008-06-18 21:21       ` Marcelo Tosatti
2008-06-18 21:42         ` Anthony Liguori
2008-06-18 22:41           ` Marcelo Tosatti
2008-06-18 22:57             ` john stultz
2008-06-18 23:08               ` Nakajima, Jun
2008-06-20 14:07             ` Andi Kleen

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=20080618204042.GA15981@dmt.cnet \
    --to=mtosatti@redhat.com \
    --cc=anthony@codemonkey.ws \
    --cc=avi@qumranet.com \
    --cc=kvm@vger.kernel.org \
    /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