Re: [PATCH v7u1 06/31] x86, 64bit, realmode: use init_level4_pgt toset trapmoline_pgt directly

From: Sakkinen, Jarkko
Date: Fri Jan 04 2013 - 12:18:57 EST


On Thu, 2013-01-03 at 16:48 -0800, Yinghai Lu wrote:
> with #PF handler way to set early page table, level3_ident will go away with
> 64bit native path.
>
> So just use entries in init_level4_pgt to set them in tramopline_pgt
>
> Signed-off-by: Yinghai Lu <yinghai@xxxxxxxxxx>
> Cc: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxx>

Acked-by: Jarkko Sakkinen <jarkko.sakkinen@xxxxxxxxx>

> ---
> arch/x86/realmode/init.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/arch/x86/realmode/init.c b/arch/x86/realmode/init.c
> index b96fe6f..384b3f4 100644
> --- a/arch/x86/realmode/init.c
> +++ b/arch/x86/realmode/init.c
> @@ -78,8 +78,8 @@ void __init setup_real_mode(void)
> *trampoline_cr4_features = read_cr4();
>
> trampoline_pgd = (u64 *) __va(real_mode_header->trampoline_pgd);
> - trampoline_pgd[0] = __pa_symbol(level3_ident_pgt) + _KERNPG_TABLE;
> - trampoline_pgd[511] = __pa_symbol(level3_kernel_pgt) + _KERNPG_TABLE;
> + trampoline_pgd[0] = init_level4_pgt[pgd_index(__PAGE_OFFSET)].pgd;
> + trampoline_pgd[511] = init_level4_pgt[511].pgd;
> #endif
> }
>

¢éì®&Þ~º&¶¬–+-±éÝ¥Šw®žË±Êâmébžìdz¹Þ)í…æèw*jg¬±¨¶‰šŽŠÝj/êäz¹ÞŠà2ŠÞ¨è­Ú&¢)ß«a¶Úþø®G«éh®æj:+v‰¨Šwè†Ù>Wš±êÞiÛaxPjØm¶Ÿÿà -»+ƒùdš_