Patchwork [09/22] UBI: Fastmap: Fix PEB count assert

login
register
mail settings
Submitter Richard Weinberger
Date June 18, 2012, 4:18 p.m.
Message ID <1340036345-96726-10-git-send-email-richard@nod.at>
Download mbox | patch
Permalink /patch/165509/
State New
Headers show

Comments

Richard Weinberger - June 18, 2012, 4:18 p.m.
Use also the bad PEB count value, otherwise the assert will fail
if the FLASH has bad blocks.

Signed-off-by: Richard Weinberger <richard@nod.at>
---
 drivers/mtd/ubi/wl.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

Patch

diff --git a/drivers/mtd/ubi/wl.c b/drivers/mtd/ubi/wl.c
index 4d9384b..58d74e4 100644
--- a/drivers/mtd/ubi/wl.c
+++ b/drivers/mtd/ubi/wl.c
@@ -1728,9 +1728,10 @@  int ubi_wl_init(struct ubi_device *ubi, struct ubi_attach_info *ai)
 	dbg_wl("found %i PEBs", found_pebs);
 
 	if (ubi->fm)
-		ubi_assert(ubi->peb_count == found_pebs + ubi->fm->used_blocks);
+		ubi_assert(ubi->peb_count - ubi->bad_peb_count == \
+			   found_pebs + ubi->fm->used_blocks);
 	else
-		ubi_assert(ubi->peb_count == found_pebs);
+		ubi_assert(ubi->peb_count - ubi->bad_peb_count == found_pebs);
 
 	if (ubi->avail_pebs < WL_RESERVED_PEBS) {
 		ubi_err("no enough physical eraseblocks (%d, need %d)",