mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 13:41:51 +00:00
gsmi: fix null-deref in gsmi_get_variable
We can get EFI variables without fetching the attribute, so we must allow for that in gsmi. commit859748255b
("efi: pstore: Omit efivars caching EFI varstore access layer") added a new get_variable call with attr=NULL, which triggers panic in gsmi. Fixes:74c5b31c66
("driver: Google EFI SMI") Cc: stable <stable@kernel.org> Signed-off-by: Khazhismel Kumykov <khazhy@google.com> Link: https://lore.kernel.org/r/20230118010212.1268474-1-khazhy@google.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
96b328d119
commit
a769b05eee
@ -361,9 +361,10 @@ static efi_status_t gsmi_get_variable(efi_char16_t *name,
|
|||||||
memcpy(data, gsmi_dev.data_buf->start, *data_size);
|
memcpy(data, gsmi_dev.data_buf->start, *data_size);
|
||||||
|
|
||||||
/* All variables are have the following attributes */
|
/* All variables are have the following attributes */
|
||||||
*attr = EFI_VARIABLE_NON_VOLATILE |
|
if (attr)
|
||||||
EFI_VARIABLE_BOOTSERVICE_ACCESS |
|
*attr = EFI_VARIABLE_NON_VOLATILE |
|
||||||
EFI_VARIABLE_RUNTIME_ACCESS;
|
EFI_VARIABLE_BOOTSERVICE_ACCESS |
|
||||||
|
EFI_VARIABLE_RUNTIME_ACCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
spin_unlock_irqrestore(&gsmi_dev.lock, flags);
|
spin_unlock_irqrestore(&gsmi_dev.lock, flags);
|
||||||
|
Loading…
Reference in New Issue
Block a user