aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mtd/ubi/fastmap.c
diff options
context:
space:
mode:
authorRichard Weinberger <richard@nod.at>2014-10-25 13:26:49 +0200
committerRichard Weinberger <richard@nod.at>2015-03-26 22:46:01 +0100
commit42dd3cdcd6b5671ebedc3df76ca8dcc3473bcc67 (patch)
tree9bf61e207d8acf972db76b919a5ba8aa33034fd1 /drivers/mtd/ubi/fastmap.c
parentUBI: Fastmap: Fix race after ubi_wl_get_peb() (diff)
downloadlinux-dev-42dd3cdcd6b5671ebedc3df76ca8dcc3473bcc67.tar.xz
linux-dev-42dd3cdcd6b5671ebedc3df76ca8dcc3473bcc67.zip
UBI: Fastmap: Set used_ebs only for static volumes
If we set it for dynamic ones we might confuse various self checks. Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'drivers/mtd/ubi/fastmap.c')
-rw-r--r--drivers/mtd/ubi/fastmap.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c
index 5db41a5fdd7a..749e2e4738fc 100644
--- a/drivers/mtd/ubi/fastmap.c
+++ b/drivers/mtd/ubi/fastmap.c
@@ -136,14 +136,15 @@ static struct ubi_ainf_volume *add_vol(struct ubi_attach_info *ai, int vol_id,
if (!av)
goto out;
- av->highest_lnum = av->leb_count = 0;
+ av->highest_lnum = av->leb_count = av->used_ebs = 0;
av->vol_id = vol_id;
- av->used_ebs = used_ebs;
av->data_pad = data_pad;
av->last_data_size = last_eb_bytes;
av->compat = 0;
av->vol_type = vol_type;
av->root = RB_ROOT;
+ if (av->vol_type == UBI_STATIC_VOLUME)
+ av->used_ebs = used_ebs;
dbg_bld("found volume (ID %i)", vol_id);