lkml.org 
[lkml]   [2013]   [Dec]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH V5 2/6] Add shared update_fdt() function for ARM/ARM64
From
On Mon, Dec 2, 2013 at 6:56 AM, Mark Salter <msalter@redhat.com> wrote:
> On Fri, 2013-11-29 at 11:30 +0000, Matt Fleming wrote:
>> > /*
>> > * Add an additional efi_memory_desc_t because we're doing an
>> > * allocation which may be in a new descriptor region.
>> > + * We allocate as EFI_RUNTIME_SERVICES_DATA since this is what
>> > + * we want for when we pass the memory map to the kernel. This
>> > + * function is also used to get the memory map for other uses,
>> > + * but is always freed by the stub so the allocation type
>> > + * doesn't matter.
>> > */
>> > *map_size += sizeof(*m);
>> > status = efi_call_phys3(sys_table_arg->boottime->allocate_pool,
>> > - EFI_LOADER_DATA, *map_size, (void **)&m);
>> > + EFI_RUNTIME_SERVICES_DATA, *map_size,
>> > + (void **)&m);
>> > if (status != EFI_SUCCESS)
>> > goto fail;
>>
>>
>> OK, this needs a stronger justification. Presumably the reason for this
>> change is that you want the allocation to hang around once the kernel is
>> running? We have this problem on x86 and it's solved by reserving the
>> memory early in the kernel, e.g. memblock_reserve().
>> EFI_RUNTIME_SERVICES_DATA is for firmware use, not for kernel data.
>>
>
> Yeah, arm64 reserves it and is okay with it being EFI_LOADER_DATA.
>
> --Mark

I have discussed this with Leif and will change this back to
EFI_LOADER_DATA, and Leif will update
his runtime services patch to reserve this as done in your arm64 implementation.

Thanks,
Roy


\
 
 \ /
  Last update: 2013-12-03 01:21    [W:0.050 / U:0.104 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site