Commit d5096850 authored by Konrad Rzeszutek Wilk's avatar Konrad Rzeszutek Wilk

xen/p2m: Collapse early_alloc_p2m_middle redundant checks.

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: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
parent cef4cca5
...@@ -502,6 +502,8 @@ static bool alloc_p2m(unsigned long pfn) ...@@ -502,6 +502,8 @@ static bool alloc_p2m(unsigned long pfn)
static bool __init early_alloc_p2m_middle(unsigned long pfn, bool check_boundary) static bool __init early_alloc_p2m_middle(unsigned long pfn, bool check_boundary)
{ {
unsigned topidx, mididx, idx; unsigned topidx, mididx, idx;
unsigned long *p2m;
unsigned long *mid_mfn_p;
topidx = p2m_top_index(pfn); topidx = p2m_top_index(pfn);
mididx = p2m_mid_index(pfn); mididx = p2m_mid_index(pfn);
...@@ -522,24 +524,21 @@ static bool __init early_alloc_p2m_middle(unsigned long pfn, bool check_boundary ...@@ -522,24 +524,21 @@ static bool __init early_alloc_p2m_middle(unsigned long pfn, bool check_boundary
return false; return false;
/* Boundary cross-over for the edges: */ /* Boundary cross-over for the edges: */
if (idx) { p2m = extend_brk(PAGE_SIZE, PAGE_SIZE);
unsigned long *p2m = extend_brk(PAGE_SIZE, PAGE_SIZE);
unsigned long *mid_mfn_p;
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]; mid_mfn_p = p2m_top_mfn_p[topidx];
WARN(mid_mfn_p[mididx] != virt_to_mfn(p2m_missing), WARN(mid_mfn_p[mididx] != virt_to_mfn(p2m_missing),
"P2M_TOP_P[%d][%d] != MFN of p2m_missing!\n", "P2M_TOP_P[%d][%d] != MFN of p2m_missing!\n",
topidx, mididx); topidx, mididx);
mid_mfn_p[mididx] = virt_to_mfn(p2m); mid_mfn_p[mididx] = virt_to_mfn(p2m);
} return true;
return idx != 0;
} }
static bool __init early_alloc_p2m(unsigned long pfn) static bool __init early_alloc_p2m(unsigned long pfn)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment