x86/shadow: fix uninitialized rc in shadow_track_dirty_vram()
authorJan Beulich <jbeulich@suse.com>
Fri, 22 May 2015 08:13:30 +0000 (10:13 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 22 May 2015 08:13:30 +0000 (10:13 +0200)
Commit bd1b4a71b3 ("x86/shadow: fix shadow_track_dirty_vram to work on
hvm guests"), trying to mirror its HAP counterpart, deleted a couple of
assignments to rc without making sure rc is initialized on all paths.

Coverity ID: 1299410
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Tim Deegan <tim@xen.org>
xen/arch/x86/mm/shadow/common.c

index 9e9d19f20e67cc860436c4754b5125613e4a1922..654bacc72fabeef7f4c6be574644d80aa0579977 100644 (file)
@@ -3518,7 +3518,7 @@ int shadow_track_dirty_vram(struct domain *d,
                             unsigned long nr,
                             XEN_GUEST_HANDLE_64(uint8) guest_dirty_bitmap)
 {
-    int rc;
+    int rc = 0;
     unsigned long end_pfn = begin_pfn + nr;
     unsigned long dirty_size = (nr + 7) / 8;
     int flush_tlb = 0;
@@ -3550,10 +3550,7 @@ int shadow_track_dirty_vram(struct domain *d,
     }
 
     if ( !nr )
-    {
-        rc = 0;
         goto out;
-    }
 
     dirty_bitmap = vzalloc(dirty_size);
     if ( dirty_bitmap == NULL )