WARNING - OLD ARCHIVES

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/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-users] Re: [Xen-devel] Re: BSOD "A clock interrupt was not recevied

To: "Frank van der Linden" <Frank.Vanderlinden@xxxxxxx>
Subject: [Xen-users] Re: [Xen-devel] Re: BSOD "A clock interrupt was not recevied onasecondary processor within the allocated time interval"
From: "Andrew Lyon" <andrew.lyon@xxxxxxxxx>
Date: Wed, 7 Jan 2009 19:33:34 +0000
Cc: "Xen-Devel \(E-mail\)" <xen-devel@xxxxxxxxxxxxxxxxxxx>, Steve Prochniak <sprochniak@xxxxxxxxxxxxxxx>, Keir Fraser <keir.fraser@xxxxxxxxxxxxx>, Steven Smith <steven.smith@xxxxxxxxxxxxx>, xen-users@xxxxxxxxxxxxxxxxxxx, Ben Guthro <bguthro@xxxxxxxxxxxxxxx>
Delivery-date: Wed, 07 Jan 2009 11:34:15 -0800
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=4Gkb6n9XFSv6yMsSCSvaGJD4EUgkZD7QLIxj1D+/XSg=; b=tGIUeqdgNY8iqri0IBK8sR/TjHn/sdLA11RChAKSpMk6e2b/Oyqxyo5ybvsGykX5Xa EmKPEwIHlOCMwbCTEfs2rDmTR8aUgTMaaq06xjwMcwEXMgrzhT+QKN7XuV3srwqv2wyX TkB5sz8UOlQql2gAI1z72eER/Rvei09Qr6T4I=
Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=bY9WdcP80bfBvBXGQjv6ub2tfHuwaMXbq5ZdKveH0wJh7zrZcgppxiAUNxCE9CVAf5 sBBDIL5CBae4nXLagzKMmes/9rtoafEt9RI0NYnpWgeBTqo+C9iNg+F0r/I8aNmp3KgU mPQsZ+3UvObqA9/LvNYJnhk1M+V9q+SNUy7Tc=
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <4964E970.3090803@xxxxxxx>
List-help: <mailto:xen-users-request@lists.xensource.com?subject=help>
List-id: Xen user discussion <xen-users.lists.xensource.com>
List-post: <mailto:xen-users@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-users>, <mailto:xen-users-request@lists.xensource.com?subject=unsubscribe>
References: <49627C6B.7000900@xxxxxxxxxxxxxxx> <C5883149.20C37%keir.fraser@xxxxxxxxxxxxx> <20090106103909.GA23206@xxxxxxxxxxxxxxxxxxxxxxxxxx> <4964E970.3090803@xxxxxxx>
Sender: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
On Wed, Jan 7, 2009 at 5:42 PM, Frank van der Linden
<Frank.Vanderlinden@xxxxxxx> wrote:
> Steven Smith wrote:
>>>
>>> Alternative Viridian interface support was checked in. When enabled, it
>>> ought to be sufficient to disable these bugchecks. Œviridian=1¹ needs to
>>> be
>>> specified in the domain config file.
>>
>> Hmm...  In order for the Viridian stuff to actually solve this
>> problem, you need to set the relaxed-timers bit.  It doesn't look like
>> the xen-unstable implementation does so.  Something like this might
>> help:
>>
>> diff -r f6b92526e916 xen/arch/x86/hvm/viridian.c
>> --- a/xen/arch/x86/hvm/viridian.c       Tue Jan 06 09:14:39 2009 +0000
>> +++ b/xen/arch/x86/hvm/viridian.c       Tue Jan 06 10:32:26 2009 +0000
>> @@ -37,6 +37,7 @@
>>   /* Viridian CPUID 4000004, Implementation Recommendations. */
>>  #define CPUID4A_MSR_BASED_APIC  (1 << 3)
>> +#define CPUID4A_RELAX_TIMER_INT_HANDLING (1 << 5)
>>   int cpuid_viridian_leaves(unsigned int leaf, unsigned int *eax,
>>                           unsigned int *ebx, unsigned int *ecx,
>> @@ -84,7 +85,7 @@
>>         if ( (d->arch.hvm_domain.viridian.guest_os_id.raw == 0) ||
>>              (d->arch.hvm_domain.viridian.guest_os_id.fields.os < 4) )
>>             break;
>> -        *eax = CPUID4A_MSR_BASED_APIC;
>> +        *eax = CPUID4A_MSR_BASED_APIC | CPUID4A_RELAX_TIMER_INT_HANDLING;
>>         *ebx = 2047; /* long spin count */
>>         break;
>>     }
>>
>> But note that I haven't tested this *at all*.
>
> That appears to work. I have a test setup where I can introduce an arbitrary
> delay in qemu-dm. It's easy to trigger bug check 0x101 in Windows 2008 that
> way. Using viridian=1, with the relaxed timer bit set, I have been unable to
> crash Windows 2008.
>
> Looks like a good thing to commit.

How do you introduce the delay? I'd like to try xen-unstable with
viridian=1 but I want to be absolutely sure that the issue is fixed so
if you have a patch for qemu-dm I'd appreciate it if you could post
it, the BSOD 101 issue causes serious problems for me because I am
using pci passthrough, I've found  if the domain using passthru
crashes, I issue "xm pci-detach", or "xm destroy" a domain that is
using a passthru pci device, will cause the entire machine to lockup ,
I've tried Xen 3.2.1/2/3 and 3.3.0/1 with various different kernels
but it always happens, so if my Vista or 2008 domains that are using
pci passthru usb2 cards BSOD at all it takes down the entire box,
usually resulting in data loss :(

Perhaps that problem might be fixed in unstable too, I will try it
tomorrow but it would really help to have a way to trigger a bsod 101.

Thanks
Andy

>
> - Frank
>

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

<Prev in Thread] Current Thread [Next in Thread>