]> git.baikalelectronics.ru Git - kernel.git/commit
efi: be more paranoid about available space when creating variables
authorMatthew Garrett <matthew.garrett@nebula.com>
Sun, 3 Mar 2013 00:40:17 +0000 (19:40 -0500)
committerMatt Fleming <matt.fleming@intel.com>
Wed, 6 Mar 2013 14:43:29 +0000 (14:43 +0000)
commit5b8e498eb488e5fdf12ae20c43064e272a01e50b
tree2ae86a0b511deea1fd79b375297eedde45921a03
parent5d5acf7f3e8c669857f1288b923731e4b4ceb550
efi: be more paranoid about available space when creating variables

UEFI variables are typically stored in flash. For various reasons, avaiable
space is typically not reclaimed immediately upon the deletion of a
variable - instead, the system will garbage collect during initialisation
after a reboot.

Some systems appear to handle this garbage collection extremely poorly,
failing if more than 50% of the system flash is in use. This can result in
the machine refusing to boot. The safest thing to do for the moment is to
forbid writes if they'd end up using more than half of the storage space.
We can make this more finegrained later if we come up with a method for
identifying the broken machines.

Signed-off-by: Matthew Garrett <matthew.garrett@nebula.com>
Cc: Josh Boyer <jwboyer@redhat.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
drivers/firmware/efivars.c