Messages in this thread | | | Date | Sun, 19 Feb 2012 15:57:41 +0200 | From | Shmulik Ladkani <> | Subject | Re: [RFC][PATCH 7/7] MTD: UBI: wire up checkpointing |
| |
On Tue, 14 Feb 2012 21:06:46 +0100 Richard Weinberger <rw@linutronix.de> wrote: > +#ifdef CONFIG_MTD_UBI_CHECKPOINT > +static int attach_by_checkpointing(struct ubi_device *ubi) > +{ > + int cp_start, err; > + struct ubi_scan_info *si; > + > + cp_start = ubi_find_checkpoint(ubi); > + if (cp_start < 0) > + return -ENOENT; > + > + si = ubi_read_checkpoint(ubi, cp_start); > + if (IS_ERR(si)) > + return PTR_ERR(si); > + > + ubi->bad_peb_count = 0; > + ubi->good_peb_count = ubi->peb_count;
Zero reported bad PEBs when checkpointing. Seems that checkpointing does not remember number/location of bad PEBs. Are we fine with that?
> +#ifdef CONFIG_MTD_UBI_CHECKPOINT > + err = attach_by_checkpointing(ubi); > + > + if (err) { > + if (err != -ENOENT) > + ubi_msg("falling back to attach by scanning mode!\n"); > + > + err = attach_by_scanning(ubi); > + }
Code does not fit error message. Message states "falling back to scanning" only if "err != -ENOENT". However code calls 'attach_by_scanning' regardless 'err'. Was it your intention?
Regards, Shmulik
| |