summaryrefslogtreecommitdiffstats
path: root/include/linux/efi.h
diff options
context:
space:
mode:
authorSeiji Aguchi <seiji.aguchi@hds.com>2012-11-14 20:25:37 +0000
committerTony Luck <tony.luck@intel.com>2012-11-26 16:01:46 -0800
commitd80a361d779a9f19498943d1ca84243209cd5647 (patch)
tree7d142c3dd3b12f5d77aa9c105482bd2a1a9e354d /include/linux/efi.h
parent9489e9dcae718d5fde988e4a684a0f55b5f94d17 (diff)
downloadtalos-op-linux-d80a361d779a9f19498943d1ca84243209cd5647.tar.gz
talos-op-linux-d80a361d779a9f19498943d1ca84243209cd5647.zip
efi_pstore: Check remaining space with QueryVariableInfo() before writing data
[Issue] As discussed in a thread below, Running out of space in EFI isn't a well-tested scenario. And we wouldn't expect all firmware to handle it gracefully. http://marc.info/?l=linux-kernel&m=134305325801789&w=2 On the other hand, current efi_pstore doesn't check a remaining space of storage at writing time. Therefore, efi_pstore may not work if it tries to write a large amount of data. [Patch Description] To avoid handling the situation above, this patch checks if there is a space enough to log with QueryVariableInfo() before writing data. Signed-off-by: Seiji Aguchi <seiji.aguchi@hds.com> Acked-by: Mike Waychison <mikew@google.com> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'include/linux/efi.h')
-rw-r--r--include/linux/efi.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/efi.h b/include/linux/efi.h
index 8670eb1eb8cd..c47ec36f3f39 100644
--- a/include/linux/efi.h
+++ b/include/linux/efi.h
@@ -643,6 +643,7 @@ struct efivar_operations {
efi_get_variable_t *get_variable;
efi_get_next_variable_t *get_next_variable;
efi_set_variable_t *set_variable;
+ efi_query_variable_info_t *query_variable_info;
};
struct efivars {
OpenPOWER on IntegriCloud