diff options
author | Dave Young <dyoung@redhat.com> | 2014-05-01 21:15:48 +0800 |
---|---|---|
committer | Matt Fleming <matt.fleming@intel.com> | 2014-05-02 13:47:10 +0100 |
commit | 34f51147d2e64da842679a97ffcfd17c8a0e6943 (patch) | |
tree | 6f98a3b3ef40a3ec8d35867f1e5668349b0a8d81 /crypto/async_tx | |
parent | 47514c996fac5e6f13ef3a4c5e23f1c5cffabb7b (diff) | |
download | talos-op-linux-34f51147d2e64da842679a97ffcfd17c8a0e6943.tar.gz talos-op-linux-34f51147d2e64da842679a97ffcfd17c8a0e6943.zip |
x86/efi: earlyprintk=efi,keep fix
earlyprintk=efi,keep will cause kernel hangs while freeing initmem like
below:
VFS: Mounted root (ext4 filesystem) readonly on device 254:2.
devtmpfs: mounted
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 <dyoung@redhat.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Diffstat (limited to 'crypto/async_tx')
0 files changed, 0 insertions, 0 deletions