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,
>>
>>
>
next prev parent 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).