[PATCH 2/2] UBI: support per-device wear-leveling threshold
Zhihao Cheng
chengzhihao1 at huawei.com
Wed Jul 22 20:01:06 PDT 2026
在 2026/7/23 10:02, Ran Hongyun 写道:
> The UBI wear-leveling threshold (CONFIG_MTD_UBI_WL_THRESHOLD) is
> currently a compile-time constant shared by all UBI devices. When a
> single kernel image must support multiple NAND flashes with different
> erase lifetimes, one global threshold cannot suit all devices.
>
> Add a per-device configurable wl_threshold parameter:
>
> - UAPI: add __s32 wl_threshold to struct ubi_attach_req, carved
> from the existing padding.
>
> - Module parameter: ubi.mtd gains a new optional token
> "wl_threshold":
> ubi.mtd=0,0,0,0,0,0,256 ubi.mtd=1,0,0,0,0,0,4096
>
> 0 means "use the kernel default", the accepted range is
> 2-65536.
>
> Signed-off-by: Ran Hongyun <ranhongyun1 at huawei.com>
> ---
> drivers/mtd/ubi/build.c | 43 ++++++++++++++++++++++++++++++------
> drivers/mtd/ubi/cdev.c | 2 +-
> drivers/mtd/ubi/fastmap-wl.c | 8 +++----
> drivers/mtd/ubi/ubi.h | 21 +++++++++++++++++-
> drivers/mtd/ubi/wl.c | 39 ++++++++------------------------
> include/uapi/mtd/ubi-user.h | 10 ++++++++-
> 6 files changed, 79 insertions(+), 44 deletions(-)
>
Reviewed-by: Zhihao Cheng <chengzhihao1 at huawei.com>
More information about the linux-mtd
mailing list