On Wed, May 15, 2013 at 12:24 AM, Ben Hutchings <[email protected]> wrote:
> On Tue, May 14, 2013 at 11:28:13PM +0800, Lingzhu Xiang wrote:
>> This is apparently a kernel bug. It should be introduced after bug 703574.
>>
>> In an attempt to protect more Samsungs from bricking, kernel prevented
>> you from using more than 50% firmware storage with efi variables.
>> Somehow the algorithm of determining 50% gets overzealous with
>> different firmware, and on your machine it decides it's always over
>> 50% and stops you from doing anything no matter how. This is why you
>> can't create new boot entries.
> [...]
>
> No, that particular check is currently patched out in Debian 'wheezy'.

Thanks for the hint. It turned out the machine I tested has firmware
(AMI, EFI v2.10) returning max_size=0

This is 3.2.41-2 with a printk before return EFI_OUT_OF_RESOURCE:

[   16.614359] size=112 storage_size=65536 remaining_size=20742 max_size=0
[   16.616881] size=26 storage_size=65536 remaining_size=20742 max_size=0
[   16.616888] efivars: set_variable() failed: status=8000000000000009

Maybe this upstream patch is needed
x86,efi: Check max_size only if it is non-zero.


Lingzhu Xiang


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]

Reply via email to