Pali, On Fri, Jun 2, 2017 at 5:43 PM, Pali Rohár <pali.ro...@gmail.com> wrote: > In read-only mode is skipped auto-resize. For pre-build images ready for > auto-resize there can be reserved more PEBs as whole size of pre-build > image. In read-only we do not do any write operation therefore this would > allow to use read-only UBI volume which is not auto-resized yet. > > Signed-off-by: Pali Rohár <pali.ro...@gmail.com> > --- > drivers/mtd/ubi/vtbl.c | 14 +++++++++----- > 1 file changed, 9 insertions(+), 5 deletions(-) > > diff --git a/drivers/mtd/ubi/vtbl.c b/drivers/mtd/ubi/vtbl.c > index 263743e..1d708c5 100644 > --- a/drivers/mtd/ubi/vtbl.c > +++ b/drivers/mtd/ubi/vtbl.c > @@ -240,8 +240,10 @@ static int vtbl_check(const struct ubi_device *ubi, > if (reserved_pebs > ubi->good_peb_count) { > ubi_err(ubi, "too large reserved_pebs %d, good PEBs > %d", > reserved_pebs, ubi->good_peb_count); > - err = 9; > - goto bad; > + if (!ubi->ro_mode) { > + err = 9; > + goto bad; > + }
I fear this is not correct, it will disable a legit self-check of UBI volumes. If the read-only volume is corrupted/truncated and you miss PEBs, this check will no longer trigger. Especially when dealing with nanddumps, truncation is a common problem. -- Thanks, //richard