diff options
author | Mark Brown <broonie@linaro.org> | 2014-01-17 15:52:17 +0000 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-01-17 15:52:17 +0000 |
commit | 81e53d0470878165a300d75ac06a5bc5eee543a2 (patch) | |
tree | 5fdaacfb350c5a290109f98ab29e9858f1f11469 /drivers/firmware/efi/efivars.c | |
parent | 15e0964dc2a097de3cf518badf2237b6b6adf7fe (diff) | |
parent | fcb4ed749c776a2ae89ca40343cbccb6f8981e60 (diff) |
Merge branches 'topic/sc18is602' and 'topic/rspi' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi into spi-bpw
Diffstat (limited to 'drivers/firmware/efi/efivars.c')
-rw-r--r-- | drivers/firmware/efi/efivars.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/firmware/efi/efivars.c b/drivers/firmware/efi/efivars.c index 933eb027d52..3dc24823919 100644 --- a/drivers/firmware/efi/efivars.c +++ b/drivers/firmware/efi/efivars.c @@ -383,12 +383,16 @@ static ssize_t efivar_delete(struct file *filp, struct kobject *kobj, else if (__efivar_entry_delete(entry)) err = -EIO; - efivar_entry_iter_end(); - - if (err) + if (err) { + efivar_entry_iter_end(); return err; + } - efivar_unregister(entry); + if (!entry->scanning) { + efivar_entry_iter_end(); + efivar_unregister(entry); + } else + efivar_entry_iter_end(); /* It's dead Jim.... */ return count; |