summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArvind Sankar <nivedita@alum.mit.edu>2020-07-29 22:33:00 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2020-08-26 12:49:19 +0300
commitca60a5eb83720d0eb425e6192723afa77ac86a73 (patch)
treea3e302cd33512e1144a4985ba2f8bbfa7c7cc8a7
parent3bff856ba44d73cf6b17a8232d7ce444a7f21907 (diff)
downloadlinux-ca60a5eb83720d0eb425e6192723afa77ac86a73.tar.xz
efi/libstub: Handle NULL cmdline
commit a37ca6a2af9df2972372b918f09390c9303acfbd upstream. Treat a NULL cmdline the same as empty. Although this is unlikely to happen in practice, the x86 kernel entry does check for NULL cmdline and handles it, so do it here as well. Cc: <stable@vger.kernel.org> Signed-off-by: Arvind Sankar <nivedita@alum.mit.edu> Link: https://lore.kernel.org/r/20200729193300.598448-1-nivedita@alum.mit.edu Signed-off-by: Ard Biesheuvel <ardb@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/firmware/efi/libstub/efi-stub-helper.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/firmware/efi/libstub/efi-stub-helper.c b/drivers/firmware/efi/libstub/efi-stub-helper.c
index 37ff34e7b85e..f53652a3a106 100644
--- a/drivers/firmware/efi/libstub/efi-stub-helper.c
+++ b/drivers/firmware/efi/libstub/efi-stub-helper.c
@@ -187,10 +187,14 @@ int efi_printk(const char *fmt, ...)
*/
efi_status_t efi_parse_options(char const *cmdline)
{
- size_t len = strlen(cmdline) + 1;
+ size_t len;
efi_status_t status;
char *str, *buf;
+ if (!cmdline)
+ return EFI_SUCCESS;
+
+ len = strlen(cmdline) + 1;
status = efi_bs_call(allocate_pool, EFI_LOADER_DATA, len, (void **)&buf);
if (status != EFI_SUCCESS)
return status;