summaryrefslogtreecommitdiff
path: root/drivers/firmware/efi/vars.c
diff options
context:
space:
mode:
authorMark Brown <broonie@linaro.org>2014-01-10 11:52:05 +0000
committerMark Brown <broonie@linaro.org>2014-01-10 11:52:05 +0000
commitfce6bd84d663b92997e0fa9c971ed2b2cdf08fb4 (patch)
treec5b460cfc60b16a7c6718ae2613bb1d9cb98e5b8 /drivers/firmware/efi/vars.c
parent56d37d85438df38e150282baafe52dcd588854c7 (diff)
parent374b105797c3d4f29c685f3be535c35f5689b30e (diff)
Merge tag 'v3.13-rc3' into asoc-arizona
Linux 3.13-rc3
Diffstat (limited to 'drivers/firmware/efi/vars.c')
-rw-r--r--drivers/firmware/efi/vars.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/firmware/efi/vars.c b/drivers/firmware/efi/vars.c
index 391c67b182d9..b22659cccca4 100644
--- a/drivers/firmware/efi/vars.c
+++ b/drivers/firmware/efi/vars.c
@@ -683,8 +683,16 @@ struct efivar_entry *efivar_entry_find(efi_char16_t *name, efi_guid_t guid,
if (!found)
return NULL;
- if (remove)
- list_del(&entry->list);
+ if (remove) {
+ if (entry->scanning) {
+ /*
+ * The entry will be deleted
+ * after scanning is completed.
+ */
+ entry->deleting = true;
+ } else
+ list_del(&entry->list);
+ }
return entry;
}