+ if (boot_record_count) {
+ /*
+ * We've already processed one. So we just check if
+ * this one is the same as the first one we found.
+ */
+ if (memcmp(mh, buf, sizeof(struct INFTLMediaHeader))) {
+ printk(KERN_WARNING "INFTL: Media Headers at "
+ "0x%x and 0x%x disagree.\n",
+ inftl->MediaUnit * inftl->EraseSize,
+ block * inftl->EraseSize);
+ return -1;
+ }
+ if (boot_record_count == 1)
+ inftl->SpareMediaUnit = block;
+
+ /*
+ * Mark this boot record (INFTL MediaHeader) block as
+ * reserved.
+ */
+ inftl->PUtable[block] = BLOCK_RESERVED;
+
+ boot_record_count++;
+ continue;
+ }