spl: don't assume NVMe partition 1 exists
authorHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Tue, 15 Aug 2023 16:07:36 +0000 (18:07 +0200)
committerHeinrich Schuchardt <heinrich.schuchardt@canonical.com>
Sat, 19 Aug 2023 02:12:52 +0000 (04:12 +0200)
There is no requirement that a partition 1 exists in a partition table.
We should not try to retrieve information about it.

We should not even try reading with partition number
CONFIG_SYS_NVME_BOOT_PARTITION here as this is done in the fs_set_blk_dev()
call anyway.

Fixes: 8ce6a2e17577 ("spl: blk: Support loading images from fs")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
common/spl/spl_blk_fs.c

index 16ecece..eb6f526 100644 (file)
@@ -44,7 +44,6 @@ int spl_blk_load_image(struct spl_image_info *spl_image,
                       enum uclass_id uclass_id, int devnum, int partnum)
 {
        const char *filename = CONFIG_SPL_FS_LOAD_PAYLOAD_NAME;
-       struct disk_partition part_info = {};
        struct legacy_img_hdr *header;
        struct blk_desc *blk_desc;
        loff_t actlen, filesize;
@@ -59,11 +58,6 @@ int spl_blk_load_image(struct spl_image_info *spl_image,
 
        blk_show_device(uclass_id, devnum);
        header = spl_get_load_buffer(-sizeof(*header), sizeof(*header));
-       ret = part_get_info(blk_desc, 1, &part_info);
-       if (ret) {
-               printf("spl: no partition table found. Err - %d\n", ret);
-               goto out;
-       }
 
        dev.ifname = blk_get_uclass_name(uclass_id);
        snprintf(dev.dev_part_str, sizeof(dev.dev_part_str) - 1, "%x:%x",