]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
efi/libstub: remove unnecessary cmd_line_len from efi_convert_cmdline()
authorJonathan Marek <jonathan@marek.ca>
Sun, 13 Oct 2024 05:11:57 +0000 (01:11 -0400)
committerArd Biesheuvel <ardb@kernel.org>
Tue, 15 Oct 2024 18:04:11 +0000 (20:04 +0200)
efi_convert_cmdline() always sets cmdline_size to at least 1 on success,
so the "cmdline_size > 0" does nothing and can be removed (the intent
was to avoid parsing an empty string, but there is nothing wrong with
parsing an empty string, it is only making boot negligibly slower).

Then the cmd_line_len argument to efi_convert_cmdline can be removed
because there is nothing left using it.

Signed-off-by: Jonathan Marek <jonathan@marek.ca>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
drivers/firmware/efi/libstub/efi-stub-helper.c
drivers/firmware/efi/libstub/efi-stub.c
drivers/firmware/efi/libstub/efistub.h
drivers/firmware/efi/libstub/x86-stub.c

index de659f6a815fd479561b6d2b1939e8f6624d1b02..e7346f8edb38c04daf6ba5f4c79350cc25cb6ccd 100644 (file)
@@ -327,7 +327,7 @@ fail:
  * Size of memory allocated return in *cmd_line_len.
  * Returns NULL on error.
  */
-char *efi_convert_cmdline(efi_loaded_image_t *image, int *cmd_line_len)
+char *efi_convert_cmdline(efi_loaded_image_t *image)
 {
        const efi_char16_t *options = efi_table_attr(image, load_options);
        u32 options_size = efi_table_attr(image, load_options_size);
@@ -405,7 +405,6 @@ char *efi_convert_cmdline(efi_loaded_image_t *image, int *cmd_line_len)
        snprintf((char *)cmdline_addr, options_bytes, "%.*ls",
                 options_bytes - 1, options);
 
-       *cmd_line_len = options_bytes;
        return (char *)cmdline_addr;
 }
 
index 2a1b43f9e0fa2bedf66df55d3e9309a8c1087844..f09e277ba2108825a60079ef77dbe570011d574b 100644 (file)
@@ -112,7 +112,6 @@ static u32 get_supported_rt_services(void)
 
 efi_status_t efi_handle_cmdline(efi_loaded_image_t *image, char **cmdline_ptr)
 {
-       int cmdline_size = 0;
        efi_status_t status;
        char *cmdline;
 
@@ -121,7 +120,7 @@ efi_status_t efi_handle_cmdline(efi_loaded_image_t *image, char **cmdline_ptr)
         * protocol. We are going to copy the command line into the
         * device tree, so this can be allocated anywhere.
         */
-       cmdline = efi_convert_cmdline(image, &cmdline_size);
+       cmdline = efi_convert_cmdline(image);
        if (!cmdline) {
                efi_err("getting command line via LOADED_IMAGE_PROTOCOL\n");
                return EFI_OUT_OF_RESOURCES;
@@ -137,7 +136,7 @@ efi_status_t efi_handle_cmdline(efi_loaded_image_t *image, char **cmdline_ptr)
                }
        }
 
-       if (!IS_ENABLED(CONFIG_CMDLINE_FORCE) && cmdline_size > 0) {
+       if (!IS_ENABLED(CONFIG_CMDLINE_FORCE)) {
                status = efi_parse_options(cmdline);
                if (status != EFI_SUCCESS) {
                        efi_err("Failed to parse options\n");
index 685098f9626f2b8cad9f4f4b33258e03ef741160..76e44c185f29e1758c09dd02988f3b723d3793a0 100644 (file)
@@ -1056,7 +1056,7 @@ void efi_free(unsigned long size, unsigned long addr);
 
 void efi_apply_loadoptions_quirk(const void **load_options, u32 *load_options_size);
 
-char *efi_convert_cmdline(efi_loaded_image_t *image, int *cmd_line_len);
+char *efi_convert_cmdline(efi_loaded_image_t *image);
 
 efi_status_t efi_get_memory_map(struct efi_boot_memmap **map,
                                bool install_cfg_tbl);
index f8e465da344d54572b5bd66fabd4517b39caeedf..188c8000d245ec11b1da1beeb379ff2f3051195e 100644 (file)
@@ -537,7 +537,6 @@ efi_status_t __efiapi efi_pe_entry(efi_handle_t handle,
        efi_guid_t proto = LOADED_IMAGE_PROTOCOL_GUID;
        struct boot_params *boot_params;
        struct setup_header *hdr;
-       int options_size = 0;
        efi_status_t status;
        unsigned long alloc;
        char *cmdline_ptr;
@@ -569,7 +568,7 @@ efi_status_t __efiapi efi_pe_entry(efi_handle_t handle,
        hdr->initrd_addr_max = INT_MAX;
 
        /* Convert unicode cmdline to ascii */
-       cmdline_ptr = efi_convert_cmdline(image, &options_size);
+       cmdline_ptr = efi_convert_cmdline(image);
        if (!cmdline_ptr) {
                efi_free(PARAM_SIZE, alloc);
                efi_exit(handle, EFI_OUT_OF_RESOURCES);