On Thu, 01 May, at 09:15:48PM, Dave Young wrote:
> 
> earlyprintk=efi,keep will cause kernel hangs while freeing initmem like below:
> [    2.826089] VFS: Mounted root (ext4 filesystem) readonly on device 254:2.
> [    2.846592] devtmpfs: mounted
> [    2.856974] Freeing unused kernel memory: 880K (ffffffff817d4000 - 
> ffffffff818b0000)
> 
> It is caused by efi earlyprintk use __init function which will be freed later.
> Such as early_efi_write is marked as __init, also it will use early_ioremap
> which is init function as well.
> 
> To fix this issue, I added early initcall early_efi_map_fb which maps the 
> whole
> efi fb for later use. OTOH, adding a wrapper function early_efi_map which 
> calls
> early_ioremap before ioremap is available.
> 
> With this patch applied efi boot ok with earlyprintk=efi,keep console=efi
> 
> Signed-off-by: Dave Young <dyo...@redhat.com>
> ---
>  arch/x86/platform/efi/early_printk.c |   83 
> ++++++++++++++++++++++++++---------
>  1 file changed, 64 insertions(+), 19 deletions(-)

Thanks Dave, applied!

-- 
Matt Fleming, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to