xen/p2m: Collapse early_alloc_p2m_middle redundant checks.
authorKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Fri, 30 Mar 2012 18:16:49 +0000 (14:16 -0400)
committerKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Fri, 6 Apr 2012 21:03:04 +0000 (17:03 -0400)
At the start of the function we were checking for idx != 0
and bailing out. And later calling extend_brk if idx != 0.

That is unnecessary so remove that checks.

Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
arch/x86/xen/p2m.c

index 8b3a3958d1204101e66edc18f4c18192e697da4f..952edefcedb356d4e331c2794a5e978728d33d4c 100644 (file)
@@ -502,6 +502,8 @@ static bool alloc_p2m(unsigned long pfn)
 static bool __init early_alloc_p2m_middle(unsigned long pfn, bool check_boundary)
 {
        unsigned topidx, mididx, idx;
+       unsigned long *p2m;
+       unsigned long *mid_mfn_p;
 
        topidx = p2m_top_index(pfn);
        mididx = p2m_mid_index(pfn);
@@ -522,24 +524,21 @@ static bool __init early_alloc_p2m_middle(unsigned long pfn, bool check_boundary
                return false;
 
        /* Boundary cross-over for the edges: */
-       if (idx) {
-               unsigned long *p2m = extend_brk(PAGE_SIZE, PAGE_SIZE);
-               unsigned long *mid_mfn_p;
+       p2m = extend_brk(PAGE_SIZE, PAGE_SIZE);
 
-               p2m_init(p2m);
+       p2m_init(p2m);
 
-               p2m_top[topidx][mididx] = p2m;
+       p2m_top[topidx][mididx] = p2m;
 
-               /* For save/restore we need to MFN of the P2M saved */
+       /* For save/restore we need to MFN of the P2M saved */
 
-               mid_mfn_p = p2m_top_mfn_p[topidx];
-               WARN(mid_mfn_p[mididx] != virt_to_mfn(p2m_missing),
-                       "P2M_TOP_P[%d][%d] != MFN of p2m_missing!\n",
-                       topidx, mididx);
-               mid_mfn_p[mididx] = virt_to_mfn(p2m);
+       mid_mfn_p = p2m_top_mfn_p[topidx];
+       WARN(mid_mfn_p[mididx] != virt_to_mfn(p2m_missing),
+               "P2M_TOP_P[%d][%d] != MFN of p2m_missing!\n",
+               topidx, mididx);
+       mid_mfn_p[mididx] = virt_to_mfn(p2m);
 
-       }
-       return idx != 0;
+       return true;
 }
 
 static bool __init early_alloc_p2m(unsigned long pfn)