This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
Home Products Support Community News


Re: [Xen-devel] Re: system freeze when processor.ko is loaded

To: "Wang, Winston L" <winston.l.wang@xxxxxxxxx>, Jan Beulich <JBeulich@xxxxxxxxxx>
Subject: Re: [Xen-devel] Re: system freeze when processor.ko is loaded
From: Keir Fraser <keir.xen@xxxxxxxxx>
Date: Tue, 12 Apr 2011 18:32:49 +0100
Cc: "Liu, Jinsong" <jinsong.liu@xxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxx>, "Jiang, Yunhong" <yunhong.jiang@xxxxxxxxx>, "Li, Xin" <xin.li@xxxxxxxxx>, "Dugger, Donald D" <donald.d.dugger@xxxxxxxxx>
Delivery-date: Tue, 12 Apr 2011 10:33:26 -0700
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:user-agent:date:subject:from:to:cc:message-id :thread-topic:thread-index:in-reply-to:mime-version:content-type :content-transfer-encoding; bh=JlFEZfPyZwhToiR1KCn2OVk3tpn5HWES/ImH09/6FWs=; b=QyGXlJ3tsGWOVXWCvSg4FoL0bdNpGV90hJP9Cftd7nBkcMrf34ndcZerPXUAKUbYQz 3/Vo098GfAoMRHVAwYuCiHAydzaifw1HBmmHSvpO280ROvwBwK7z6gi8JSuf6DhWvzEq HTnkgDEnUApSte9h+w1UKjLnShB1lTrMQaMYw=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=user-agent:date:subject:from:to:cc:message-id:thread-topic :thread-index:in-reply-to:mime-version:content-type :content-transfer-encoding; b=hp1O0iXuqon7FeQBeMDxlN5TMS49UNmfbNfc5VJvPVZ7P9ohY9QT/a+r6NsAc0hb4u qUeMqwL0Fqtl6/TEBODma52pkNuCuZtCU/SMwXHe+vdQfYISAYyz+dfS0IOBtYGuL87a kIgQpQQDHr2IoK239YSj94jzxgOFqLETDyNQw=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <54B2EB610B7F1340BB6A0D4CA04A4F1001008E35D9@xxxxxxxxxxxxxxxxxxxxxxxxxxxx>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Acv434fPUq/eLJyURCKFLpbh3P64bAAU1XmgAAExuLo=
Thread-topic: [Xen-devel] Re: system freeze when processor.ko is loaded
User-agent: Microsoft-Entourage/
On 12/04/2011 18:27, "Wang, Winston L" <winston.l.wang@xxxxxxxxx> wrote:

>>>>> On 12.04.11 at 00:35, "Wang, Winston L" <winston.l.wang@xxxxxxxxx>
>> 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
> 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,

Xen-devel mailing list