mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 14:51:00 +07:00
mtd: Account for BBT blocks when a partition is being allocated
With the introduction of mtd_block_isreserved(), it's now possible to fix the bad and reserved block distribution exposed by ecc_stats, instead of accounting all the bad or reserved blocks as 'bad'. Signed-off-by: Ezequiel Garcia <ezequiel.garcia@free-electrons.com> Tested-by: Pekon Gupta <pekon@ti.com> Signed-off-by: Brian Norris <computersforpeace@gmail.com>
This commit is contained in:
parent
8471bb73ba
commit
fdf43a420f
@ -535,7 +535,9 @@ static struct mtd_part *allocate_partition(struct mtd_info *master,
|
||||
uint64_t offs = 0;
|
||||
|
||||
while (offs < slave->mtd.size) {
|
||||
if (mtd_block_isbad(master, offs + slave->offset))
|
||||
if (mtd_block_isreserved(master, offs + slave->offset))
|
||||
slave->mtd.ecc_stats.bbtblocks++;
|
||||
else if (mtd_block_isbad(master, offs + slave->offset))
|
||||
slave->mtd.ecc_stats.badblocks++;
|
||||
offs += slave->mtd.erasesize;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user