![UBI坏块管理](https://linux22.com/image/24347/UBI%E5%9D%8F%E5%9D%97%E7%AE%A1%E7%90%86.png)
有人知道当 UBI 用完所有为坏块管理保留的 PEB 时会发生什么吗?例如,假设我有一个保留了 14 个 PEB 的 UBI 卷
# ubinfo -d 1
ubi1
Volumes count: 1
Logical eraseblock size: 126976 bytes, 124.0 KiB
Total amount of logical eraseblocks: 1466 (186146816 bytes, 177.5 MiB)
Amount of available logical eraseblocks: 787 (99930112 bytes, 95.3 MiB)
Maximum count of volumes 128
Count of bad physical eraseblocks: 0
Count of reserved physical eraseblocks: 14
Current maximum erase counter value: 9
Minimum input/output unit size: 2048 bytes
Character device major/minor: 249:0
Present volumes: 0
当 UBI 发现 15 号坏块时会发生什么?它不允许使用卷吗?
答案1
我在armv5tel GNU/Linux 2.6.39+ 上测试了它,使用 U-Boot 命令行将物理擦除块 (PEB) 标记为坏:
当坏的 PEB 数量高于保留的 PEB 数量时,该卷仍然可用。只要有空闲块可用,它们就会被用来替换坏的块。当所有 PEB 都用完并发现新的坏块时,就会出现问题。