Re: [PATCH v7 0/9] kdump: reduce vmcore size and capture time
From: Mike Rapoport
Date: Fri Oct 09 2026 - 12:33:42 EST
On Fri, Oct 09, 2026 at 11:04:47AM +0800, Wandun wrote:
> On 10/2/26 16:17, Mike Rapoport wrote:
> > Hi Wandun,
> >
> > On Tue, Sep 22, 2026 at 04:42:47PM +0800, Wandun Chen wrote:
> >> From: Wandun Chen <chenwandun@xxxxxxxxxxx>
> >>
> >> On SoCs that carve out large firmware-owned reserved memory (GPU,
> >> camera ISP, ...), kdump currently dumps those carveouts as part of
> >> system RAM even though their contents are firmware state that is not
> >> useful for kernel crash analysis.
> >>
> >> This series introduces a MEMBLOCK_NODUMP flag in memblock to filter
> >> reserved memory on DT-based architectures (arm64, riscv, loongarch).
> >> Reserved regions are marked MEMBLOCK_NODUMP by default so kdump omits
> >> them; reusable CMA regions are different because their pages are handed
> >> back to the buddy allocator and may carry crash-relevant data.
> >>
> >> ACPI systems already filter reserved memory out of the vmcore through
> >> their existing path; only DT-based systems currently fail to filter these
> >> regions, which is what this series addresses. The flag lives in memblock
> >> itself rather than in a DT-only structure, so both ACPI and DT systems
> >> can benefit from it (suggested by Rob, thanks).
> >
> Hi Mike,
>
> Thanks for the review.
>
> > Can you elaborate how ACPI systems filter their reserved memory?
>
> In the EFI memory map, firmware carveouts are reported with the type
> EFI_RESERVED_TYPE. This type of memory gets the nomap flag set in
> memblock.memory (is_usable_memory() returns false in reserve_regions()
> and mark these regions with nomap flag), during prepare_elf_headers(),
> for_each_mem_range() filters out these nomap regions. Therefore, the
> memory reserved on ACPI based systems will not be dumped into the vmcore.
>
> I will add these description in next version.
>
> > With your patches, the memblock flag becomes a part of DT-only
> > infrastructure, so that claim that both ACPI and DT benefit from it does
> > not hold, doesn't it?
>
> You are right, the wording was misleading. Let me clarify what I meant.
>
> In this series only DT marks regions as MEMBLOCK_NODUMP:
> /reserved-memory and /memreserve/ entries are tagged in the OF
> paths (of_reserved_mem.c, fdt.c). ACPI does not set the flag and
> keeps filtering its reserved memory through the existing path, as
> described above.
>
>
> What I intended to convey is that the flag itself lives in memblock
> rather than on the DT-only struct reserved_mem, so it is available
> for reuse. If an ACPI system ever needed to exclude a firmware-owned
> region from the vmcore, it could mark that region with MEMBLOCK_NODUMP
> the same way DT does, instead of having to invent a parallel mechanism.
> That is a future option, not something this series enables for ACPI
> today.
So, EFI uses NOMAP for the same purpose, right?
Why when we need a new memblock flag then?
> Also will update these description in next verison.
>
> Best regards,
> Wandun
--
Sincerely yours,
Mike.