提交 cf3e5050 编写于 作者: J Jeremy Fitzhardinge 提交者: Ingo Molnar

x86: work around gcc 3.4.x bug

Simon Horman reported that gcc-3.4.x crashes when compiling
pgd_prepopulate_pmd() when PREALLOCATED_PMDS == 0 and CONFIG_DEBUG_INFO
is enabled.

Adding an extra check for PREALLOCATED_PMDS == 0 [which is compiled out
by gcc] seems to avoid the problem.
Reported-by: NSimon Horman <horms@verge.net.au>
Signed-off-by: NJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Acked-by: NSimon Horman <horms@verge.net.au>
Signed-off-by: NIngo Molnar <mingo@elte.hu>
上级 fb6bef80
...@@ -207,6 +207,9 @@ static void pgd_prepopulate_pmd(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmds[]) ...@@ -207,6 +207,9 @@ static void pgd_prepopulate_pmd(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmds[])
unsigned long addr; unsigned long addr;
int i; int i;
if (PREALLOCATED_PMDS == 0) /* Work around gcc-3.4.x bug */
return;
pud = pud_offset(pgd, 0); pud = pud_offset(pgd, 0);
for (addr = i = 0; i < PREALLOCATED_PMDS; for (addr = i = 0; i < PREALLOCATED_PMDS;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册