Преглед изворни кода

Fix initrd length corruption in bootm command.

When using FDT Images, the length of an inital ramdisk was
overwritten (bug introduced by commit 87a449c8, 22 Aug 2006).

Patches by Timur Tabi & Johns Daniel.

Signed-off-by: Wolfgang Denk <wd@denx.de>
Wolfgang Denk пре 18 година
родитељ
комит
9877d7dcd1
1 измењених фајлова са 1 додато и 2 уклоњено
  1. 1 2
      common/cmd_bootm.c

+ 1 - 2
common/cmd_bootm.c

@@ -779,9 +779,8 @@ do_bootm_linux (cmd_tbl_t *cmdtp, int flag,
 
 			checksum = ntohl(hdr->ih_dcrc);
 			addr = (ulong)((uchar *)(hdr) + sizeof(image_header_t));
-			len = ntohl(hdr->ih_size);
 
-			if(checksum != crc32(0, (uchar *)addr, len)) {
+			if(checksum != crc32(0, (uchar *)addr, ntohl(hdr->ih_size))) {
 				printf("ERROR: Flat Device Tree checksum is invalid\n");
 				return;
 			}