> > ... > > if (efi.memmap.flags & (EFI_MEMMAP_MEMBLOCK | EFI_MEMMAP_SLAB)) { > > __efi_memmap_free(efi.memmap.phys_map, > > efi.memmap.desc_size * efi.memmap.nr_map, efi.memmap.flags); > > } > > From your debugging the memmap should not be freed. This piece of > code was added in below commit, added Dan Williams in cc list: > commit f0ef6523475f18ccd213e22ee593dfd131a2c5ea > Author: Dan Williams <dan.j.williams@xxxxxxxxx> > Date: Mon Jan 13 18:22:44 2020 +0100 > > efi: Fix efi_memmap_alloc() leaks > > With efi_fake_memmap() and efi_arch_mem_reserve() the efi table may be > updated and replaced multiple times. When that happens a previous > dynamically allocated efi memory map can be garbage collected. Use the > new EFI_MEMMAP_{SLAB,MEMBLOCK} flags to detect when a dynamically > allocated memory map is being replaced. > Dan, probably those regions should be freed only for "fake" memmap? _______________________________________________ kexec mailing list kexec@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/kexec