ubi: Don't do anchor move within fastmap area
authorRichard Weinberger <richard@nod.at>
Thu, 25 Jul 2019 20:46:01 +0000 (22:46 +0200)
committerRichard Weinberger <richard@nod.at>
Sun, 15 Sep 2019 19:55:19 +0000 (21:55 +0200)
commit8596813a117f61db2e74c449ea1436e63d096323
tree6975f0a91a734ac507c5b451c2e6882527462c6b
parentcbc898d52cd11b23fd7c8079becbd8be742e78ce
ubi: Don't do anchor move within fastmap area

To make sure that Fastmap can use a PEB within the first 64
PEBs, UBI moves blocks away from that area.
It uses regular wear-leveling for that job.

An anchor move can be triggered if no PEB is free in this area
or because of anticipation. In the latter case it can happen
that UBI decides to move a block but finds a free PEB
within the same area.
This case is in vain an increases only erase counters.

Catch this case and cancel wear-leveling if this happens.

Signed-off-by: Richard Weinberger <richard@nod.at>
drivers/mtd/ubi/wl.c