Re: çå: [PATCH RFC] ubi: ubi_wl_get_peb: Replace a limited number of attempts with polling while getting PEB

From: Richard Weinberger
Date: Thu Aug 01 2019 - 05:21:09 EST


----- UrsprÃngliche Mail -----
> Von: "chengzhihao1" <chengzhihao1@xxxxxxxxxx>
> An: "richard" <richard@xxxxxx>, "yi zhang" <yi.zhang@xxxxxxxxxx>
> CC: "linux-mtd" <linux-mtd@xxxxxxxxxxxxxxxxxxx>, "linux-kernel" <linux-kernel@xxxxxxxxxxxxxxx>
> Gesendet: Donnerstag, 1. August 2019 11:13:20
> Betreff: çå: [PATCH RFC] ubi: ubi_wl_get_peb: Replace a limited number of attempts with polling while getting PEB

> I don't quite understand why a limited number of attempts have been made to get
> a free PEB in ubi_wl_get_peb (in fastmap-wl.c). I proposed this PATCH with
> reference to the implementation of ubi_wl_get_peb (in wl.c). As far as I know,
> getting PEB by polling probably won't fall into soft-lockup.
> ubi_update_fastmap may add new tasks (including erase task or wl taskk, wl tasks
> generally do not generate additional free PEBs) to ubi->works, and
> produce_free_peb will eventually complete all tasks in ubi->works or obtain an
> free PEB that can be filled into pool.

You send this patch three times, I guess your mail setup has issues? :-)

This is one of the darkest corners of Fastmap where things get messy.
The number of retry attempts was limited to avoid a live lock.

I agree that allowing only one retry is a little to few.
With nandsim, a small nand and a fast PC you can hit that.

Do you have numbers how many attempts were needed to get a free block?

Thanks,
//richard