Skip to content

kernel/resource: make walk_system_ram_res() and walk_mem_res() search the whole tree

David Hildenbrand kexec linux-mm lkml 2 versions – Applied

Status from this message: [merged] kernel-resource-remove-first_lvl-siblings_only-logic.patch removed from -mm tree

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest3 patches 0 repliesApplied 3/3
  2. v13 patches 15 repliesSuperseded

Changes in v2 from the cover letter

- Added fixes tags to patch #1 and #2
- Refined the patch descriptions
- Added acks/rbs

Patches in v2 All 3 applied

#Subject and filesSizeRepliesApplied
1/3kernel/resource: make walk_system_ram_res() find all busy IORESOURCE_SYSTEM_RAM resourceskernel/resource.c+1 -10 repliesApplied
2/3kernel/resource: make walk_mem_res() find all busy IORESOURCE_MEM resourceskernel/resource.c+1 -10 repliesApplied
3/3kernel/resource: remove first_lvl / siblings_only logickernel/resource.c+12 -330 repliesApplied

Reviews trailers per patch

All 3 patches have a Reviewed-by or Acked-by.

PatchDan WilliamsBaoquan HeAndy Shevchenko
1/3R-b A-b
2/3R-b
3/3R-b R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes. Scroll the table sideways for all 3 reviewers.

Read the v2 thread

Cover letter [PATCH v2 0/3] kernel/resource: make walk_system_ram_res() and walk_mem_res() search the whole tree

Playing with kdump+virtio-mem I noticed that kexec_file_load() does not consider System RAM added via dax/kmem and virtio-mem when preparing the elf header for kdump. Looking into the details, the logic used in walk_system_ram_res() and walk_mem_res() seems to be outdated.

walk_system_ram_range() already does the right thing, let's change walk_system_ram_res() and walk_mem_res(), and clean up.

Loading a kdump kernel via "kexec -p -s" ... will result in the kdump kernel to also dump dax/kmem and virtio-mem added System RAM now.

Note: kexec-tools on x86-64 also have to be updated to consider this memory in the kexec_load() case when processing /proc/iomem.

v1 -> v2:
- Added fixes tags to patch #1 and #2
- Refined the patch descriptions
- Added acks/rbs

David Hildenbrand (3):
kernel/resource: make walk_system_ram_res() find all busy
IORESOURCE_SYSTEM_RAM resources
kernel/resource: make walk_mem_res() find all busy IORESOURCE_MEM
resources
kernel/resource: remove first_lvl / siblings_only logic

 kernel/resource.c | 45 ++++++++++++---------------------------------
 1 file changed, 12 insertions(+), 33 deletions(-)

base-commit: 0d02ec6b3136c73c09e7859f0d0e4e2c4c07b49b

Signature · 1 line
2.29.2