Hi, Please ignore this patch series because the compile warnings are reported by kduild. I will resend v8 later after the warnings are fixed. Sorry for this. Thanks. Lianbo 在 2019年10月30日 11:54, Lianbo Jiang 写道: > In purgatory(), the main things are as below: > > [1] verify sha256 hashes for various segments. > Lets keep these codes, and do not touch the logic. > > [2] copy the first 640k content to a backup region. > Lets safely remove it and clean all code related to backup region. > > This patch series will remove the backup region, because the current > handling of copying the first 640k runs into problems when SME is > active(https://bugzilla.kernel.org/show_bug.cgi?id=204793). > > The low 1M region will always be reserved when the crashkernel kernel > command line option is specified. And this way makes it unnecessary to > do anything with the low 1M region, because the memory allocated later > won't fall into the low 1M area. > > This series includes two patches: > [1] x86/kdump: always reserve the low 1M when the crashkernel option > is specified > The low 1M region will always be reserved when the crashkernel > kernel command line option is specified, which ensures that the > memory allocated later won't fall into the low 1M area. > > [2] x86/kdump: clean up all the code related to the backup region > Remove the backup region and clean up. > > Changes since v1: > [1] Add extra checking condition: when the crashkernel option is > specified, reserve the low 640k area. > > Changes since v2: > [1] Reserve the low 1M region when the crashkernel option is only > specified.(Suggested by Eric) > > [2] Remove the unused crash_copy_backup_region() > > [3] Remove the backup region and clean up > > [4] Split them into three patches > > Changes since v3: > [1] Improve the first patch's log > > [2] Improve the third patch based on Eric's suggestions > > Changes since v4: > [1] Correct some typos, and also improve the first patch's log > > [2] Add a new function kexec_reserve_low_1MiB() in kernel/kexec_core.c > and which is called by reserve_real_mode(). (Suggested by Boris) > > Changes since v5: > [1] Call the cmdline_find_option() instead of strstr() to check the > crashkernel option. (Suggested by Hatayama) > > [2] Add a weak function kexec_reserve_low_1MiB() in kernel/kexec_core.c, > and implement the kexec_reserve_low_1MiB() in arch/x86/kernel/ > machine_kexec_64.c so that it does not cause the compile error > on non-x86 kernel, and also ensures that it can work well on x86 > kernel. > > Changes since v6: > [1] Move the kexec_reserve_low_1MiB() to arch/x86/kernel/crash.c and > also move its declaration function to arch/x86/include/asm/crash.h > (Suggested by Dave Young) > > [2] Adjust the corresponding header files. > > Changes since v7: > [1] Change the function name from kexec_reserve_low_1MiB() to > crash_reserve_low_1M(). > > Lianbo Jiang (2): > x86/kdump: always reserve the low 1M when the crashkernel option is > specified > x86/kdump: clean up all the code related to the backup region > > arch/x86/include/asm/crash.h | 6 ++ > arch/x86/include/asm/kexec.h | 10 --- > arch/x86/include/asm/purgatory.h | 10 --- > arch/x86/kernel/crash.c | 102 ++++++++--------------------- > arch/x86/kernel/machine_kexec_64.c | 47 ------------- > arch/x86/purgatory/purgatory.c | 19 ------ > arch/x86/realmode/init.c | 2 + > 7 files changed, 34 insertions(+), 162 deletions(-) > _______________________________________________ kexec mailing list kexec@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/kexec