ELF program table virtual address is submitted to is_phys_addr()
function, most likely as a leftover of replaced is_vmalloc_addr()
function. Submit the physical address instead.
This fixes the below error when CONFIG_RANDOMIZE_IDENTITY_BASE
kernel configuration option on s390 is enabled:
get_kcore_dump_loads: Can't get the correct number of PT_LOAD. Success
Fixes: 2e452d75fa78 ("[PATCH v3] Enable --mem-usage for s390x.")
Signed-off-by: Alexander Gordeev <[email protected]>
---
elf_info.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/elf_info.c b/elf_info.c
index bc24083..7f3d053 100644
--- a/elf_info.c
+++ b/elf_info.c
@@ -765,7 +765,7 @@ int get_kcore_dump_loads(void)
for (i = 0; i < num_pt_loads; ++i) {
struct pt_load_segment *p = &pt_loads[i];
if (p->phys_start == NOT_PADDR
- || !is_phys_addr(p->virt_start))
+ || !is_phys_addr(p->phys_start))
continue;
loads++;
}
@@ -786,7 +786,7 @@ int get_kcore_dump_loads(void)
for (i = 0, j = 0; i < num_pt_loads; ++i) {
struct pt_load_segment *p = &pt_loads[i];
if (p->phys_start == NOT_PADDR
- || !is_phys_addr(p->virt_start))
+ || !is_phys_addr(p->phys_start))
continue;
if (j >= loads) {
free(pls);
--
2.43.0
_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec