Message ID | 1380141125-11063-2-git-send-email-richard@nod.at |
---|---|
State | Accepted |
Commit | 4b3e0a25aa5518892ec8dbfafdd6a57789aa0c22 |
Headers | show |
On 25/09/2013 22:32, Richard Weinberger wrote: > If we find an invalid fastmap we have to scan from the very beginning. > Otherwise we leak the first 64 PEBs. > > Reported-by: Richard Genoud <richard.genoud@gmail.com> > Signed-off-by: Richard Weinberger <richard@nod.at> > --- > drivers/mtd/ubi/attach.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/mtd/ubi/attach.c b/drivers/mtd/ubi/attach.c > index c071d41..03b32b0 100644 > --- a/drivers/mtd/ubi/attach.c > +++ b/drivers/mtd/ubi/attach.c > @@ -1417,9 +1417,11 @@ int ubi_attach(struct ubi_device *ubi, int force_scan) > ai = alloc_ai("ubi_aeb_slab_cache2"); > if (!ai) > return -ENOMEM; > - } > > - err = scan_all(ubi, ai, UBI_FM_MAX_START); > + err = scan_all(ubi, ai, 0); > + } else { > + err = scan_all(ubi, ai, UBI_FM_MAX_START); > + } > } > } > #else > Works great, the assert is not triggered anymore. Tested-by: Richard Genoud <richard.genoud@gmail.com>
diff --git a/drivers/mtd/ubi/attach.c b/drivers/mtd/ubi/attach.c index c071d41..03b32b0 100644 --- a/drivers/mtd/ubi/attach.c +++ b/drivers/mtd/ubi/attach.c @@ -1417,9 +1417,11 @@ int ubi_attach(struct ubi_device *ubi, int force_scan) ai = alloc_ai("ubi_aeb_slab_cache2"); if (!ai) return -ENOMEM; - } - err = scan_all(ubi, ai, UBI_FM_MAX_START); + err = scan_all(ubi, ai, 0); + } else { + err = scan_all(ubi, ai, UBI_FM_MAX_START); + } } } #else
If we find an invalid fastmap we have to scan from the very beginning. Otherwise we leak the first 64 PEBs. Reported-by: Richard Genoud <richard.genoud@gmail.com> Signed-off-by: Richard Weinberger <richard@nod.at> --- drivers/mtd/ubi/attach.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)