drivers/firmware/efi/libstub/efi-stub-helper.c:662: warning: Function parameter or member 'out' not described in 'efi_load_initrd'

From: kernel test robot
Date: Thu Aug 17 2023 - 06:29:57 EST


Hi Ard,

First bad commit (maybe != root cause):

tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 4853c74bd7ab7fdb83f319bd9ace8a08c031e9b6
commit: f4dc7fffa9873db50ec25624572f8217a6225de8 efi: libstub: unify initrd loading between architectures
date: 11 months ago
config: x86_64-rhel-8.3 (https://download.01.org/0day-ci/archive/20230817/202308171819.5TP3lmj4-lkp@xxxxxxxxx/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce: (https://download.01.org/0day-ci/archive/20230817/202308171819.5TP3lmj4-lkp@xxxxxxxxx/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-kbuild-all/202308171819.5TP3lmj4-lkp@xxxxxxxxx/

All warnings (new ones prefixed by >>):

drivers/firmware/efi/libstub/efi-stub-helper.c:559: warning: Function parameter or member 'initrd' not described in 'efi_load_initrd_dev_path'
drivers/firmware/efi/libstub/efi-stub-helper.c:559: warning: Excess function parameter 'load_addr' description in 'efi_load_initrd_dev_path'
drivers/firmware/efi/libstub/efi-stub-helper.c:559: warning: Excess function parameter 'load_size' description in 'efi_load_initrd_dev_path'
>> drivers/firmware/efi/libstub/efi-stub-helper.c:662: warning: Function parameter or member 'out' not described in 'efi_load_initrd'


vim +662 drivers/firmware/efi/libstub/efi-stub-helper.c

f046fff8bc4c4d Ilias Apalodimas 2021-11-19 649
8c0a839c2bccb7 Heinrich Schuchardt 2020-06-16 650 /**
8c0a839c2bccb7 Heinrich Schuchardt 2020-06-16 651 * efi_load_initrd() - Load initial RAM disk
8c0a839c2bccb7 Heinrich Schuchardt 2020-06-16 652 * @image: EFI loaded image protocol
947228cb9f1a2c Atish Patra 2021-07-02 653 * @soft_limit: preferred address for loading the initrd
947228cb9f1a2c Atish Patra 2021-07-02 654 * @hard_limit: upper limit address for loading the initrd
8c0a839c2bccb7 Heinrich Schuchardt 2020-06-16 655 *
8c0a839c2bccb7 Heinrich Schuchardt 2020-06-16 656 * Return: status code
8c0a839c2bccb7 Heinrich Schuchardt 2020-06-16 657 */
f61900fd0ebf6c Arvind Sankar 2020-04-30 658 efi_status_t efi_load_initrd(efi_loaded_image_t *image,
f61900fd0ebf6c Arvind Sankar 2020-04-30 659 unsigned long soft_limit,
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 660 unsigned long hard_limit,
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 661 const struct linux_efi_initrd **out)
f61900fd0ebf6c Arvind Sankar 2020-04-30 @662 {
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 663 efi_guid_t tbl_guid = LINUX_EFI_INITRD_MEDIA_GUID;
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 664 efi_status_t status = EFI_SUCCESS;
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 665 struct linux_efi_initrd initrd, *tbl;
f61900fd0ebf6c Arvind Sankar 2020-04-30 666
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 667 if (!IS_ENABLED(CONFIG_BLK_DEV_INITRD) || efi_noinitrd)
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 668 return EFI_SUCCESS;
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 669
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 670 status = efi_load_initrd_dev_path(&initrd, hard_limit);
f61900fd0ebf6c Arvind Sankar 2020-04-30 671 if (status == EFI_SUCCESS) {
f61900fd0ebf6c Arvind Sankar 2020-04-30 672 efi_info("Loaded initrd from LINUX_EFI_INITRD_MEDIA_GUID device path\n");
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 673 if (initrd.size > 0)
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 674 efi_measure_initrd(initrd.base, initrd.size);
f61900fd0ebf6c Arvind Sankar 2020-04-30 675 } else if (status == EFI_NOT_FOUND) {
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 676 status = efi_load_initrd_cmdline(image, &initrd, soft_limit,
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 677 hard_limit);
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 678 /* command line loader disabled or no initrd= passed? */
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 679 if (status == EFI_UNSUPPORTED || status == EFI_NOT_READY)
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 680 return EFI_SUCCESS;
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 681 if (status == EFI_SUCCESS)
f61900fd0ebf6c Arvind Sankar 2020-04-30 682 efi_info("Loaded initrd from command line option\n");
f61900fd0ebf6c Arvind Sankar 2020-04-30 683 }
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 684 if (status != EFI_SUCCESS)
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 685 goto failed;
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 686
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 687 status = efi_bs_call(allocate_pool, EFI_LOADER_DATA, sizeof(initrd),
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 688 (void **)&tbl);
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 689 if (status != EFI_SUCCESS)
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 690 goto free_initrd;
f046fff8bc4c4d Ilias Apalodimas 2021-11-19 691
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 692 *tbl = initrd;
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 693 status = efi_bs_call(install_configuration_table, &tbl_guid, tbl);
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 694 if (status != EFI_SUCCESS)
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 695 goto free_tbl;
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 696
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 697 if (out)
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 698 *out = tbl;
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 699 return EFI_SUCCESS;
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 700
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 701 free_tbl:
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 702 efi_bs_call(free_pool, tbl);
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 703 free_initrd:
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 704 efi_free(initrd.size, initrd.base);
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 705 failed:
f4dc7fffa9873d Ard Biesheuvel 2022-09-16 706 efi_err("Failed to load initrd: 0x%lx\n", status);
f61900fd0ebf6c Arvind Sankar 2020-04-30 707 return status;
f61900fd0ebf6c Arvind Sankar 2020-04-30 708 }
14c574f35cfbc9 Arvind Sankar 2020-05-18 709

:::::: The code at line 662 was first introduced by commit
:::::: f61900fd0ebf6c6b91719d63272a54f4d11051df efi/libstub: Unify initrd loading across architectures

:::::: TO: Arvind Sankar <nivedita@xxxxxxxxxxxx>
:::::: CC: Ard Biesheuvel <ardb@xxxxxxxxxx>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki