Message ID | 20250423090517.47049-1-bsz@amazon.de |
---|---|
State | New |
Headers | show |
Series | efi: Improve logging around memmap init | expand |
On Wed, 23 Apr 2025 at 11:05, Bartosz Szczepanek <bsz@amazon.de> wrote: > > Be more informative if memremap fails, and print out physical address > together with size. This change intends to make investigations of such > early failures slightly easier. > > Signed-off-by: Bartosz Szczepanek <bsz@amazon.de> > --- > drivers/firmware/efi/memmap.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > Queued in efi/next - thanks. > diff --git a/drivers/firmware/efi/memmap.c b/drivers/firmware/efi/memmap.c > index 34109fd86c55..f1c04d7cfd71 100644 > --- a/drivers/firmware/efi/memmap.c > +++ b/drivers/firmware/efi/memmap.c > @@ -31,31 +31,32 @@ > * Returns: zero on success, a negative error code on failure. > */ > int __init __efi_memmap_init(struct efi_memory_map_data *data) > { > struct efi_memory_map map; > phys_addr_t phys_map; > > phys_map = data->phys_map; > > if (data->flags & EFI_MEMMAP_LATE) > map.map = memremap(phys_map, data->size, MEMREMAP_WB); > else > map.map = early_memremap(phys_map, data->size); > > if (!map.map) { > - pr_err("Could not map the memory map!\n"); > + pr_err("Could not map the memory map! phys_map=%pa, size=0x%lx\n", > + &phys_map, data->size); > return -ENOMEM; > } > > map.phys_map = data->phys_map; > map.nr_map = data->size / data->desc_size; > map.map_end = map.map + data->size; > > map.desc_version = data->desc_version; > map.desc_size = data->desc_size; > map.flags = data->flags; > > set_bit(EFI_MEMMAP, &efi.flags); > > efi.memmap = map; > > -- > 2.47.1 >
diff --git a/drivers/firmware/efi/memmap.c b/drivers/firmware/efi/memmap.c index 34109fd86c55..f1c04d7cfd71 100644 --- a/drivers/firmware/efi/memmap.c +++ b/drivers/firmware/efi/memmap.c @@ -31,31 +31,32 @@ * Returns: zero on success, a negative error code on failure. */ int __init __efi_memmap_init(struct efi_memory_map_data *data) { struct efi_memory_map map; phys_addr_t phys_map; phys_map = data->phys_map; if (data->flags & EFI_MEMMAP_LATE) map.map = memremap(phys_map, data->size, MEMREMAP_WB); else map.map = early_memremap(phys_map, data->size); if (!map.map) { - pr_err("Could not map the memory map!\n"); + pr_err("Could not map the memory map! phys_map=%pa, size=0x%lx\n", + &phys_map, data->size); return -ENOMEM; } map.phys_map = data->phys_map; map.nr_map = data->size / data->desc_size; map.map_end = map.map + data->size; map.desc_version = data->desc_version; map.desc_size = data->desc_size; map.flags = data->flags; set_bit(EFI_MEMMAP, &efi.flags); efi.memmap = map;
Be more informative if memremap fails, and print out physical address together with size. This change intends to make investigations of such early failures slightly easier. Signed-off-by: Bartosz Szczepanek <bsz@amazon.de> --- drivers/firmware/efi/memmap.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)