Эх сурвалжийг харах

Merge JFFS2 updates from David Woodhouse

Brian Norris 10 жил өмнө
parent
commit
eb928d40a9
1 өөрчлөгдсөн 5 нэмэгдсэн , 0 устгасан
  1. 5 0
      fs/jffs2/scan.c

+ 5 - 0
fs/jffs2/scan.c

@@ -510,6 +510,10 @@ static int jffs2_scan_eraseblock (struct jffs2_sb_info *c, struct jffs2_eraseblo
 				sumlen = c->sector_size - je32_to_cpu(sm->offset);
 				sumptr = buf + buf_size - sumlen;
 
+				/* sm->offset maybe wrong but MAGIC maybe right */
+				if (sumlen > c->sector_size)
+					goto full_scan;
+
 				/* Now, make sure the summary itself is available */
 				if (sumlen > buf_size) {
 					/* Need to kmalloc for this. */
@@ -544,6 +548,7 @@ static int jffs2_scan_eraseblock (struct jffs2_sb_info *c, struct jffs2_eraseblo
 		}
 	}
 
+full_scan:
 	buf_ofs = jeb->offset;
 
 	if (!buf_size) {