--- x/drivers/firmware/efi/vars.c +++ v/drivers/firmware/efi/vars.c @@ -536,9 +536,11 @@ int efivar_entry_remove(struct efivar_en { if (down_interruptible(&efivars_lock)) return -EINTR; - list_del(&entry->list); - up(&efivars_lock); + if (!list_empty(&entry->list)) + list_del_init(&entry->list); + + up(&efivars_lock); return 0; } EXPORT_SYMBOL_GPL(efivar_entry_remove);