[U-Boot] [PATCH v4 12/18] efi_selftest: correctly cleanup after selftest

Heinrich Schuchardt xypron.glpk at gmx.de
Wed Nov 8 19:06:15 UTC 2017


On 11/08/2017 03:40 PM, Alexander Graf wrote:
> On 10/18/2017 06:13 PM, Heinrich Schuchardt wrote:
>> After executing bootefi selftest
>> * restore GD
>> * unlink the load image handle
>> * return 0 or 1 and not a truncated efi_status_t.
>>
>> Signed-off-by: Heinrich Schuchardt <xypron.glpk at gmx.de>
>> ---
>> v4
>>     no change
>> v3
>>     new patch split off
>> ---
>>   cmd/bootefi.c | 4 +++-
>>   1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/cmd/bootefi.c b/cmd/bootefi.c
>> index 18331536dd..40834f3899 100644
>> --- a/cmd/bootefi.c
>> +++ b/cmd/bootefi.c
>> @@ -349,8 +349,10 @@ static int do_bootefi(cmd_tbl_t *cmdtp, int flag, 
>> int argc, char * const argv[])
>>           set_load_options(&loaded_image_info, "efi_selftest");
>>           /* Execute the test */
>>           r = efi_selftest(&loaded_image_info, &systab);
>> +        efi_restore_gd();
> 
> Why don't we have to restore gd on normal efi binaries? Because Exit() 
> is doing that for us?
> 
> In that case, why not call efi_selftest() through efi_do_enter()? That 
> should give you the exit call for free ;)
> 

efi_do_enter calls boottime->exit which should unload the EFI 
application image (something we still need to implement). efi_selftest 
does not have an image to be unloaded. Hence I would prefer to keep 
efi_selftest separate from image handling functions.

Best regards

Heinrich


More information about the U-Boot mailing list