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-changelog

[Xen-changelog] [xen-unstable] [IA64] fix vtlb flush

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] [IA64] fix vtlb flush
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Wed, 13 Aug 2008 08:10:20 -0700
Delivery-date: Wed, 13 Aug 2008 08:10:38 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
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/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/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 Isaku Yamahata <yamahata@xxxxxxxxxxxxx>
# Date 1218601086 -32400
# Node ID fa8be8a6cb74976d5a96f830a9a2238abf622822
# Parent  d24bc5f549ba2f1384c928456f86793fc53e66b9
[IA64] fix vtlb flush

Live migration with uninitialized vcpu will crash xen by null pointer.

Signed-off-by: Kouya Shimura <kouya@xxxxxxxxxxxxxx>
---
 xen/arch/ia64/xen/vhpt.c |    4 ++++
 1 files changed, 4 insertions(+)

diff -r d24bc5f549ba -r fa8be8a6cb74 xen/arch/ia64/xen/vhpt.c
--- a/xen/arch/ia64/xen/vhpt.c  Mon Aug 11 11:04:52 2008 +0900
+++ b/xen/arch/ia64/xen/vhpt.c  Wed Aug 13 13:18:06 2008 +0900
@@ -526,6 +526,8 @@ void flush_tlb_for_log_dirty(struct doma
        /* NB. There is no race because all vcpus are paused. */
        if (is_hvm_domain(d)) {
                for_each_vcpu (d, v) {
+                       if (!v->is_initialised)
+                               continue;
                        /* XXX: local_flush_tlb_all is called redundantly */
                        thash_purge_all(v);
                }
@@ -533,6 +535,8 @@ void flush_tlb_for_log_dirty(struct doma
                                        NULL, 1, 1);
        } else if (HAS_PERVCPU_VHPT(d)) {
                for_each_vcpu (d, v) {
+                       if (!v->is_initialised)
+                               continue;
                        vcpu_purge_tr_entry(&PSCBX(v,dtlb));
                        vcpu_purge_tr_entry(&PSCBX(v,itlb));
                        vcpu_vhpt_flush(v);

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] [IA64] fix vtlb flush, Xen patchbot-unstable <=