Messages in this thread | | | From | Baoquan He <> | Subject | [PATCH 0/2] Kexec_file: Load kernel at top of system ram | Date | Thu, 22 Mar 2018 11:37:20 +0800 |
| |
The current kexec_file ignores kexec_buf.top_down value when call arch_kexec_walk_mem() to allocate memory for loading kernel/initrd stuffs. This is not supposed to be what kexec_buf.top_down is used for.
In patch 0001, introduce a new function walk_system_ram_res_rev() which is a variant of walk_system_ram_res(), walks through resources of System RAM from top to down. And patch 0001 is picked from AKASHI's patchset which adds arm64 kexec_file support. His next round of post won't need walk_system_ram_res_rev any more, so I take it into this patchset and use it in patch 0002.
In patch 0002, check kexec_buf.top_down in arch_kexec_walk_mem(), if its value is 'true', call walk_system_ram_res_rev(). Otherwise call walk_system_ram_res().
AKASHI Takahiro (1): resource: add walk_system_ram_res_rev()
Baoquan He (1): kexec_file: Load kernel at top of system RAM if required
include/linux/ioport.h | 3 +++ kernel/kexec_file.c | 2 ++ kernel/resource.c | 63 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 68 insertions(+)
-- 2.13.6
| |