diff options
author | Richard Weinberger <richard@nod.at> | 2016-08-24 14:36:15 +0200 |
---|---|---|
committer | Ben Hutchings <ben@decadent.org.uk> | 2017-02-23 03:54:08 +0000 |
commit | fbcf2477f6059f7928d1fdca541654ff7966bac5 (patch) | |
tree | ad1ce22fa1a047589718292fcd5b055c7cf392b5 /drivers/mtd | |
parent | 2092c83cb126bde378d809ba0633b1a0275a398c (diff) | |
download | linux-stable-fbcf2477f6059f7928d1fdca541654ff7966bac5.tar.gz linux-stable-fbcf2477f6059f7928d1fdca541654ff7966bac5.tar.bz2 linux-stable-fbcf2477f6059f7928d1fdca541654ff7966bac5.zip |
ubi: Fix Fastmap's update_vol()
commit f7d11b33d4e8cedf19367c09b891bbc705163976 upstream.
Usually Fastmap is free to consider every PEB in one of the pools
as newer than the existing PEB. Since PEBs in a pool are by definition
newer than everything else.
But update_vol() missed the case that a pool can contain more than
one candidate.
Fixes: dbb7d2a88d ("UBI: Add fastmap core")
Signed-off-by: Richard Weinberger <richard@nod.at>
Reviewed-by: Boris Brezillon <boris.brezillon@free-electrons.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
[bwh: Backported to 3.16: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Diffstat (limited to 'drivers/mtd')
-rw-r--r-- | drivers/mtd/ubi/fastmap.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/mtd/ubi/fastmap.c b/drivers/mtd/ubi/fastmap.c index 640b8115505e..d2ee2576b449 100644 --- a/drivers/mtd/ubi/fastmap.c +++ b/drivers/mtd/ubi/fastmap.c @@ -258,6 +258,7 @@ static int update_vol(struct ubi_device *ubi, struct ubi_attach_info *ai, aeb->pnum = new_aeb->pnum; aeb->copy_flag = new_vh->copy_flag; aeb->scrub = new_aeb->scrub; + aeb->sqnum = new_aeb->sqnum; kmem_cache_free(ai->aeb_slab_cache, new_aeb); /* new_aeb is older */ |