spl: fit: Skip attempting to load 0 length image
authorNishanth Menon <nm@ti.com>
Tue, 19 Oct 2021 17:32:29 +0000 (12:32 -0500)
committerTom Rini <trini@konsulko.com>
Wed, 1 Dec 2021 21:28:45 +0000 (16:28 -0500)
When, for various reasons, a bad FIT image is used where a loadable
image is marked as 0 length, attempt is made for a 0 length allocation and
read of 0 byte read operation.

Instead provide warning in log and skip attempting to do such a load.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Aswath Govindraju <a-govindraju@ti.com>
common/spl/spl_fit.c

index 5fe0273..774072b 100644 (file)
@@ -286,6 +286,13 @@ static int spl_load_fit_image(struct spl_load_info *info, ulong sector,
                if (fit_image_get_data_size(fit, node, &len))
                        return -ENOENT;
 
+               /* Dont bother to copy 0 byte data, but warn, though */
+               if (!len) {
+                       log_warning("%s: Skip load '%s': image size is 0!\n",
+                                   __func__, fit_get_name(fit, node, NULL));
+                       return 0;
+               }
+
                src_ptr = map_sysmem(ALIGN(load_addr, ARCH_DMA_MINALIGN), len);
                length = len;