]> xenbits.xensource.com Git - xen.git/commitdiff
x86/viridian: do not leak page refs and mappings if the host tsc is unstable
authorAndrew Cooper <andrew.cooper3@citrix.com>
Thu, 15 Jan 2015 16:56:25 +0000 (17:56 +0100)
committerJan Beulich <jbeulich@suse.com>
Thu, 15 Jan 2015 16:56:25 +0000 (17:56 +0100)
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Coverity-ID: 1264360
Reviewed-by: Paul Durrant <paul.durrant@citrix.com>
xen/arch/x86/hvm/viridian.c

index cb689f6a2bb134cc2dbb2cb7c15d4b7684467562..1e5a5702614ee755fbfbfcf6458ce95c07460868 100644 (file)
@@ -287,7 +287,7 @@ static void update_reference_tsc(struct domain *d, bool_t initialize)
 
         printk(XENLOG_G_INFO "d%d: VIRIDIAN REFERENCE_TSC: invalidated\n",
                d->domain_id);
-        return;
+        goto out;
     }
 
     /*
@@ -306,6 +306,7 @@ static void update_reference_tsc(struct domain *d, bool_t initialize)
          p->TscSequence == 0 ) /* Avoid both 'invalid' values */
         p->TscSequence = 1;
 
+ out:
     unmap_domain_page(p);
 
     put_page_and_type(page);