Re: [PATCH] Modify UEFI anti-bricking code

From: Matthew Garrett
Date: Wed Jun 05 2013 - 12:09:07 EST


On Wed, 2013-06-05 at 16:59 +0100, Matt Fleming wrote:

> + /* clean DUMMY object */
> + efi.set_variable(efi_dummy_name, &EFI_DUMMY_GUID, 0, 0, NULL);

Hm. Actually, is that going to work? From the spec:

If a preexisting variable is rewritten with different attributes,
SetVariable()shall not modify the variable and shall return
EFI_INVALID_PARAMETER.

So I think we probably need to fix the attributes to NV|RT|BS for both
this call and the one in query_variable_store. We should probably also
only do the workaround if the NV bit is set in the original query.

--
Matthew Garrett | mjg59@xxxxxxxxxxxxx
¢éì®&Þ~º&¶¬–+-±éÝ¥Šw®žË±Êâmébžìdz¹Þ)í…æèw*jg¬±¨¶‰šŽŠÝj/êäz¹ÞŠà2ŠÞ¨è­Ú&¢)ß«a¶Úþø®G«éh®æj:+v‰¨Šwè†Ù>Wš±êÞiÛaxPjØm¶Ÿÿà -»+ƒùdš_