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

Re: [PATCH] vtdt: add a missing change (RE: [Xen-devel] Re: xen guest ha

To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: Re: [PATCH] vtdt: add a missing change (RE: [Xen-devel] Re: xen guest hang with TSC_DEADLINE)
From: Christoph Egger <Christoph.Egger@xxxxxxx>
Date: Wed, 5 Jan 2011 11:07:30 +0100
Cc: "Morgan, KeirX" <keirx.morgan@xxxxxxxxx>, "Wei, Gang" <gang.wei@xxxxxxxxx>, Fraser <Keir.Fraser@xxxxxxxxxxxxx>
Delivery-date: Wed, 05 Jan 2011 02:12:16 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
In-reply-to: <201101041200.22612.Christoph.Egger@xxxxxxx>
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>
References: <201012171529.56897.Christoph.Egger@xxxxxxx> <F26D193E20BBDC42A43B611D1BDEDE7124EF2BCFA3@xxxxxxxxxxxxxxxxxxxxxxxxxxxx> <201101041200.22612.Christoph.Egger@xxxxxxx>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: KMail/1.9.10
On Tuesday 04 January 2011 12:00:21 Christoph Egger wrote:
> On Monday 27 December 2010 04:05:41 Wei, Gang wrote:
> > Christoph Egger wrote on 2010-12-20:
> > >>> c/s 22529 and 22530 cause a xen guest hang.
> > >>>
> > >>> While "normal" guests like Linux and NetBSD boot fine I boot Xen
> > >>> itself as a xen guest for my nested virtualization.
> > >>>
> > >>> When I do that then the guest dom0 hangs at boot when it tries to
> > >>> initialize the first vcpu.
> > >>> The bug is introduced somewhere in c/s 22529 and triggers with c/s
> > >>> 22530.
> > >>
> > >> Can you enable apic_timer debug info var hvm_debug and give more
> > >> serial port log around the guest dom0 hangs? I used to test xen
> > >> guest, it works well expect that it boot a little bit slowly.
> > >
> > > This is the log output I get with TSC_DEADLINE feature enabled:
> >
> > Just found one change was missed while the whole patch was checked in.
> > Apply below patch, it should be ok now.
> >
> > diff -r 0133cf2a72f5 xen/arch/x86/hvm/vlapic.c
> > --- a/xen/arch/x86/hvm/vlapic.c     Fri Dec 24 10:56:29 2010 +0000
> > +++ b/xen/arch/x86/hvm/vlapic.c     Tue Dec 28 16:53:06 2010 +0800
> > @@ -56,7 +56,7 @@ static unsigned int vlapic_lvt_mask[VLAP
> >  static unsigned int vlapic_lvt_mask[VLAPIC_LVT_NUM] =
> >  {
> >       /* LVTT */
> > -     LVT_MASK | APIC_TIMER_MODE_PERIODIC,
> > +     LVT_MASK | APIC_TIMER_MODE_MASK,
> >       /* LVTTHMR */
> >       LVT_MASK | APIC_MODE_MASK,
> >       /* LVTPC */
> >
> > Jimmy
>
> The hang is still reproducable with this change. Sorry.

I took a deeper look into this problem.
The guest dom0 depends on the xen clock to continue ticking.
When the guest xen hypervisor uses the TSC Deadline Timer then
the xen clock for the guest dom0 does not continue ticking.
By "xen clock" I mean the timer a PV guest uses.

When the dom0 initializes the first virtual cpu it determines
cpu frequency by reading the TSC, waits 1 second and reads
the TSC again.
To finish the 1 second wait it depends on the xen clock to tick.

Christoph


-- 
---to satisfy European Law for business letters:
Advanced Micro Devices GmbH
Einsteinring 24, 85609 Dornach b. Muenchen
Geschaeftsfuehrer: Alberto Bozzo, Andrew Bowd
Sitz: Dornach, Gemeinde Aschheim, Landkreis Muenchen
Registergericht Muenchen, HRB Nr. 43632


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