Messages in this thread |  | | Date | Mon, 16 Dec 2013 12:33:24 +0100 | From | Borislav Petkov <> | Subject | Re: [PATCH v5 10/14] efi: only print saved efi runtime maps instead of all memmap ranges for kexec |
| |
On Mon, Dec 16, 2013 at 10:00:10AM +0800, Dave Young wrote: > > > - print_efi_memmap(); > > > + if (efi_setup) { > > > + int s; > > > + struct efi_setup_data *data; > > > + > > > + s = sizeof(*data) + nr_efi_runtime_map * sizeof(data->map[0]); > > > + data = early_memremap(efi_setup, s); > > > + if (!data) > > > + return; > > > + print_efi_memmap(data->map, nr_efi_runtime_map, > > > + sizeof(data->map[0])); > > > + early_memunmap(data, s); > > > > Well, if you call print_efi_memmap() in parse_efi_setup() you can save > > yourself that map/unmaping no? > > In parse_efi_setup, I need map twice as well:
Well, your v6 has a something completely different:
void __init parse_efi_setup(u64 phys_addr) { efi_setup = phys_addr; }
There's no mapping at all anymore. So please redo your reply against v6.
> Another where what I print in this patch is same position what > non-kexec kernel does, it looks better that print them only if earlier > init is ok.
-ENOPARSE.
All I'm saying is, if you're going to memremap/memunmap efi_setup, then do it once in efi_setup_init() as you do already and call print_efi_memmap from there - no need to do work twice for no reason.
-- Regards/Gruss, Boris.
Sent from a fat crate under my desk. Formatting is fine. --
|  |