Bläddra i källkod

fb_mmc.c: Correct blk_dread() return value checks

The function blk_dread will return -ENOSYS on failure or on success the
number of blocks read, which must be the number asked to read (otherwise
it failed somewhere).  Correct this check.

Cc: Lukasz Majewski <lukma@denx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
Tom Rini 6 år sedan
förälder
incheckning
6bafa5a4bd
1 ändrade filer med 2 tillägg och 2 borttagningar
  1. 2 2
      common/fb_mmc.c

+ 2 - 2
common/fb_mmc.c

@@ -132,7 +132,7 @@ static lbaint_t fb_mmc_get_boot_header(struct blk_desc *dev_desc,
 
 	/* Read the boot image header */
 	res = blk_dread(dev_desc, info->start, hdr_sectors, (void *)hdr);
-	if (res == 0) {
+	if (res != hdr_sectors) {
 		error("cannot read header from boot partition");
 		fastboot_fail("cannot read header from boot partition");
 		return 0;
@@ -215,7 +215,7 @@ static int fb_mmc_update_zimage(struct blk_desc *dev_desc,
 	ramdisk_buffer = (u8 *)hdr + (hdr_sectors * info.blksz);
 	res = blk_dread(dev_desc, ramdisk_sector_start, ramdisk_sectors,
 			ramdisk_buffer);
-	if (res == 0) {
+	if (res != ramdisk_sectors) {
 		error("cannot read ramdisk from boot partition");
 		fastboot_fail("cannot read ramdisk from boot partition");
 		return -1;