[U-Boot] [PATCH] mtd: ubi: Fix worker handling
Heiko Schocher
hs at denx.de
Mon Feb 19 13:59:46 UTC 2018
Hello Richard,
Am 08.02.2018 um 07:29 schrieb Heiko Schocher:
> From: Richard Weinberger <richard at nod.at>
>
> Fixes a bug found on thuban boards, which were for 2 years in
> a long-term test with varying temperatures. They showed
> problems in u-boot when attaching the ubi partition:
>
> U-Boot# run flash_self_test
> Booting from nand
> set A...
> UBI: attaching mtd1 to ubi0
> UBI: scanning is finished
> data abort
> pc : [<87f97c3c>] lr : [<87f97c28>]
> reloc pc : [<8012cc3c>] lr : [<8012cc28>]
> sp : 85f686e8 ip : 00000020 fp : 000001f7
> r10: 8605ce40 r9 : 85f68ef8 r8 : 0001f000
> r7 : 00000001 r6 : 00000006 r5 : 0001f000 r4 : 85f6ecc0
> r3 : 00000000 r2 : 44e35000 r1 : 87fcbcd4 r0 : 87fc755b
> Flags: nZCv IRQs off FIQs on Mode SVC_32
> Resetting CPU ...
>
> Reason is, that accidentially the U-Boot implementation
> from __schedule_ubi_work() did not check the flag
> ubi->thread_enabled and started with wearleveling work,
> but ubi did not have setup all structures at this point
> and crashes.
>
> Solve this problem by splitting work scheduling and processing.
>
> Signed-off-by: Richard Weinberger <richard at nod.at>
> Signed-off-by: Heiko Schocher <hs at denx.de>
> ---
>
> drivers/mtd/ubi/build.c | 10 +---------
> drivers/mtd/ubi/ubi.h | 2 +-
> drivers/mtd/ubi/wl.c | 53 +++++++++++++++++++++++++++++++++++--------------
> 3 files changed, 40 insertions(+), 25 deletions(-)
Applied to u-boot-ubi master
Thanks!
bye,
Heiko
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-52 Fax: +49-8142-66989-80 Email: hs at denx.de
More information about the U-Boot
mailing list