x86/mm: Fix possible increment of uninitialised variable
authorAndrew Cooper <andrew.cooper3@citrix.com>
Mon, 9 Sep 2013 17:43:40 +0000 (18:43 +0100)
committerTim Deegan <tim@xen.org>
Tue, 10 Sep 2013 14:46:35 +0000 (15:46 +0100)
Discovered by Coverity, CID 1056101

When taking the continue branch on the first iteration of the loop,
gfn would indeed be uninitialised when incremented.  However, as gfn
is unconditionally constructed from i{1..4} before use in the loop
body, having it incremented in the loop header is useless.

Therefore, simply remove it.

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

index 302b621199405aec4aac7c3b3f775cb385051157..a1d565068d0a1e769eb3bb646c1acb85694d889c 100644 (file)
@@ -691,7 +691,7 @@ static void p2m_change_type_global(struct p2m_domain *p2m,
                 l1mfn = _mfn(l2e_get_pfn(l2e[i2]));
                 l1e = map_domain_page(mfn_x(l1mfn));
 
-                for ( i1 = 0; i1 < L1_PAGETABLE_ENTRIES; i1++, gfn++ )
+                for ( i1 = 0; i1 < L1_PAGETABLE_ENTRIES; i1++ )
                 {
                     flags = l1e_get_flags(l1e[i1]);
                     if ( p2m_flags_to_type(flags) != ot )