[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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



# 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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.