mirror of https://gitee.com/openkylin/linux.git
b91671bb23
The while loop in produce_free_peb() assumes that each work will produce a free PEB. This is not true. If ubi->works_count is 1 and the only scheduled work is the wear_leveling_worker() produce_free_peb() can loop forever in case nobody schedules an erase work. Fix this issue by checking in the while loop whether work is scheduled. Signed-off-by: Richard Weinberger <richard@nod.at> Signed-off-by: Artem Bityutskiy <artem.bityutskiy@linux.intel.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
attach.c | ||
block.c | ||
build.c | ||
cdev.c | ||
debug.c | ||
debug.h | ||
eba.c | ||
fastmap.c | ||
gluebi.c | ||
io.c | ||
kapi.c | ||
misc.c | ||
ubi-media.h | ||
ubi.h | ||
upd.c | ||
vmt.c | ||
vtbl.c | ||
wl.c |