UBI坏块管理

UBI坏块管理

有人知道当 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 都用完并发现新的坏块时,就会出现问题。

相关内容