>>> On 24.01.13 at 19:20, Matt Fleming <[email protected]> wrote:
> On Fri, 2013-01-18 at 12:35 +0000, Jan Beulich wrote:
>> This fixes two issues:
>> - wrong memory type used for allocation intended to persist post-boot
> 
> [...]
> 
>> @@ -311,7 +311,7 @@ static efi_status_t setup_efi_pci(struct
>>              size = pci->romsize + sizeof(*rom);
>>  
>>              status = efi_call_phys3(sys_table->boottime->allocate_pool,
>> -                            EFI_LOADER_DATA, size, &rom);
>> +                                    EFI_RUNTIME_SERVICES_DATA, size, &rom);
>>  
>>              if (status != EFI_SUCCESS)
>>                      continue;
> 
> I'm curious why you made this change. No one should be stealing that
> region of memory because that's all handled in parse_e820_ext() - it's
> marked as off limits wrt memory for the kernel's use. And the firmware
> certainly shouldn't start touching it.

According to my reading of do_add_efi_memmap(), EFI_LOADER_DATA
gets treated the same as EFI_CONVENTIONAL_MEMORY, i.e. gets
marked as available for allocation. That's also how I'd expect things
to be. I don't think parse_e820_ext() matters here at all.

> Have you witnessed some case where things explode without your change?

No, I didn't. I merely spotted this when evaluating the code for
porting over to Xen.

Jan

--
To unsubscribe from this list: send the line "unsubscribe linux-efi" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to