Message ID | 1376944309-11342-1-git-send-email-richard@nod.at |
---|---|
State | Accepted |
Commit | 8930fa500f55215f0211db9b78255e727ac3f282 |
Headers | show |
On Mon, 2013-08-19 at 22:31 +0200, Richard Weinberger wrote: > Onging tests uncovered that invalidate_fastmap() is broken. > It must not call ubi_wl_put_fm_peb() because all PEBs used > by the old fastmap have already been put back. > > Signed-off-by: Richard Weinberger <richard@nod.at> Pushed to linux-ubi.git, thanks!
diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c index 1542751..f5aa4b0 100644 --- a/drivers/mtd/ubi/fastmap.c +++ b/drivers/mtd/ubi/fastmap.c @@ -1343,7 +1343,7 @@ out: static int invalidate_fastmap(struct ubi_device *ubi, struct ubi_fastmap_layout *fm) { - int ret, i; + int ret; struct ubi_vid_hdr *vh; ret = erase_block(ubi, fm->e[0]->pnum); @@ -1360,9 +1360,6 @@ static int invalidate_fastmap(struct ubi_device *ubi, vh->sqnum = cpu_to_be64(ubi_next_sqnum(ubi)); ret = ubi_io_write_vid_hdr(ubi, fm->e[0]->pnum, vh); - for (i = 0; i < fm->used_blocks; i++) - ubi_wl_put_fm_peb(ubi, fm->e[i], i, fm->to_be_tortured[i]); - return ret; }
Onging tests uncovered that invalidate_fastmap() is broken. It must not call ubi_wl_put_fm_peb() because all PEBs used by the old fastmap have already been put back. Signed-off-by: Richard Weinberger <richard@nod.at> [rw: I did not Cc -stable because fastmap is an experimental feature.] --- drivers/mtd/ubi/fastmap.c | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-)