> > +static void __init efi_memmap_free(struct efi_memory_map new_memmap)
> > +{
> > +   phys_addr_t start, end;
> > +   unsigned long size = new_memmap.nr_map * new_memmap.desc_size;
> > +   unsigned int order = get_order(size);
> > +
> > +   start = new_memmap.phys_map;
> > +   end = start + size;
> > +   if (new_memmap.late) {
> > +           __free_pages(pfn_to_page(PHYS_PFN(start)), order);
> > +           return;
> > +   }
> > +
> > +   if (memblock_free(start, size))
> > +           pr_err("Failed to free mem from %pa to %pa\n", &start, &end);
> 
> Why is this rather large structure passed in by value and not by reference?

My bad.. I will change it to pass by reference.

> Also, 'new_memmap' naming is confusing - by this time this is a rather old
> memmap table we are going to free, right? So naming it 'memmap' would be
> fine, right?

Yes, that should be fine. I will change it.

Regards,
Sai

Reply via email to