xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Keir Fraser <keir.xen@gmail.com>
To: "Wang, Winston L" <winston.l.wang@intel.com>,
	Jan Beulich <JBeulich@novell.com>
Cc: "Liu, Jinsong" <jinsong.liu@intel.com>,
	"xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
	"Jiang, Yunhong" <yunhong.jiang@intel.com>,
	"Li, Xin" <xin.li@intel.com>,
	"Dugger, Donald D" <donald.d.dugger@intel.com>
Subject: Re: Re: system freeze when processor.ko is loaded
Date: Tue, 12 Apr 2011 18:32:49 +0100	[thread overview]
Message-ID: <C9CA4B51.1633E%keir.xen@gmail.com> (raw)
In-Reply-To: <54B2EB610B7F1340BB6A0D4CA04A4F1001008E35D9@orsmsx505.amr.corp.intel.com>

On 12/04/2011 18:27, "Wang, Winston L" <winston.l.wang@intel.com> wrote:

>>>>> On 12.04.11 at 00:35, "Wang, Winston L" <winston.l.wang@intel.com>
>> wrote:
>>> I think restore only the lower 32bit TSC is good enough, why do we
>> need to touch upper 32 bit TSC?
>> 
>> You just can't: A wrmsr to this MSR always updates the full 64-bits,
>> just that on some CPUs this update implies the upper 32 bits getting
>> zeroed.
> You are right, just can't only write lower 32 bit without updating 32 bit
> since TSC is always 64 bits:(
> So we have to give up the deep C state for those old processors since we still
> need to maintain TSC all the time for SMP support.
> The solution should go with your patch: re-validate the processor boot with "
> X86_FEATURE_TSC_RELIABLE" to see upper 32 bit TSC MSR is writeable at
> init_xen_time or not , then decide if allow deep_cstate. This is a better idea
> than only allow the processor going to the deep c state with
> "x86_FEATURE_CONSTANT_TSC but !X86_FEATURE_NONSTOP_TSC CPUs".
> 
> Would you double test patch before pulling in? we need to check both the old
> failed processor and the current one. And what's the power idle power impact.

Do you want a chance to Ack the patch before I apply it to xen-unstable?

 -- Keir

>> And even if you could, it wouldn't be easy to deal with the situation
>> where the update would carry into the upper 32 bits.
>> 
>> Jan
>> 
>>> 1. I would not think if any processor's deep c-state wakeup from idle
>> can
>>> more than 100 ms.
>>> 2. For 3GHZ processor lower 32bit TSC wrapper around time is ~2.83
>> Sec.
>>> 3. The platform timer (22bit ACPI timer) wrapper around is 2.34 sec
>> (this is
>>> used for counting the delta before enter deep_cstate and before
>> wakeup)
>>> Just need to change cstate_restore_tsc() and only patch back the
>> delta time
>>> to the lower 32 bit TSC to make that simple?
>>> 
>>> Winston,
>> 
>> 
> 

  reply	other threads:[~2011-04-12 17:32 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <d6cfc1ce-e4b3-47dc-ae83-8d0c341988b3@rrsmsx606.amr.corp.intel.com>
2011-04-11 22:35 ` Re: system freeze when processor.ko is loaded Wang, Winston L
2011-04-12  7:03   ` Jan Beulich
2011-04-12 17:27     ` Wang, Winston L
2011-04-12 17:32       ` Keir Fraser [this message]
2011-04-13  6:50       ` Jan Beulich
2011-04-13 18:06         ` Wang, Winston L
2011-04-17 19:38           ` Martin Wilck

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=C9CA4B51.1633E%keir.xen@gmail.com \
    --to=keir.xen@gmail.com \
    --cc=JBeulich@novell.com \
    --cc=donald.d.dugger@intel.com \
    --cc=jinsong.liu@intel.com \
    --cc=winston.l.wang@intel.com \
    --cc=xen-devel@lists.xensource.com \
    --cc=xin.li@intel.com \
    --cc=yunhong.jiang@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;
as well as URLs for NNTP newsgroup(s).