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


[Xen-changelog] [xen-unstable] [IA64] Fix oops message from timer_interr

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] [IA64] Fix oops message from timer_interrupton VTI domain
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 09 Feb 2007 09:40:21 -0800
Delivery-date: Fri, 09 Feb 2007 09:46:11 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: xen-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User awilliam@xxxxxxxxxxxx
# Date 1169666885 25200
# Node ID b4df7de0cbf7530c3248956243bc9c520db2d609
# Parent  b8de061f3dc6d60e73279c41935138686860a170
[IA64] Fix oops message from timer_interrupton VTI domain

This patch intends to fix the oops message from timer_interrupt on
VTI domain.  This problem occurred when we test PV-on-HVM driver by
ltp-20061121.  Typical message shown as follows.

ltp Now Running...( Exception mode )
1 times
Unable to find swap-space signature
Oops: timer tick before it's due (itc=ed98bb5849,itm=ed98bb5849)
Oops: timer tick before it's due (itc=f20bca8ca3,itm=f20bca8ca3)
Oops: timer tick before it's due (itc=f4ea4e2b32,itm=f4ea4e2b32)
mmap1(7392): unaligned access to 0x60000fffffffb634, ip=0x200000000004fad0
mmap1(7392): unaligned access to 0x60000fffffffb634, ip=0x200000000004fad0
ltp End

These oops messages are generated because timer_interrupt checks
the condition itc > itm.  Currently Xen-hypervisor outputs following
values, max(current_itc,vtm->last_itc).  Sometimes oops message
appeared if we use the value of vtm->last_itc as ia64_get_itc()
return value, because the vtm->last_itc is same as itm.  To fix this
issue, it needs to add return value like +1.

But, ia64_get_itc() is handled at vmx_asm_mov_from_ar@xxxxxxxxxxx
and it works same logic of  now_itc()@vlsapic.c.  And these routines
shared vtm->last_itc.  So I fix this problem by adding +1 at caller
of update_last_itc.

Signed-off-by: Atsushi SAKAI <sakaia@xxxxxxxxxxxxxx>
 xen/arch/ia64/vmx/vlsapic.c |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletion(-)

diff -r b8de061f3dc6 -r b4df7de0cbf7 xen/arch/ia64/vmx/vlsapic.c
--- a/xen/arch/ia64/vmx/vlsapic.c       Wed Jan 24 12:21:37 2007 -0700
+++ b/xen/arch/ia64/vmx/vlsapic.c       Wed Jan 24 12:28:05 2007 -0700
@@ -171,7 +171,12 @@ static void vtm_timer_fn(void *data)
     } else
         vtm->pending = 1;
-    update_last_itc(vtm, VCPU(vcpu, itm));  // update vITC
+    /*
+     * "+ 1" is for fixing oops message at timer_interrupt() on VTI guest. 
+     * If oops checking condition changed to timer_after_eq() on VTI guest,
+     * this parameter should be erased.
+     */
+    update_last_itc(vtm, VCPU(vcpu, itm) + 1);  // update vITC
 void vtm_init(VCPU *vcpu)

Xen-changelog mailing list

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] [IA64] Fix oops message from timer_interrupton VTI domain, Xen patchbot-unstable <=