Bad Block Table

Dvir Oren dviro at
Tue Mar 28 06:44:17 EST 2000

David Woodhouse wrote:

> Stored in the same erase block as the NFTL Media 
> Header(s).  Look for BadUnitTable in util/nftl_format.c

I now have some more questions:

If I understand correctly, 512 zones (== bytes?) are 1 block.  And then
you try to erase each block, and see if
it was written correctly, and if not, you save it in the

However - it seems to me like the position you write the
table depends on where the nftl_format got started.  That is, if I write
nftl_format /dev/mtd0 49152, it'll write it at a different place than if
I wrote nftl_format /dev/mtd0.
Isn't the table supposed to be at the same place all the time?  I just
called M-Systems, and they claim it's at the same position all the
time.  They have a command to save it: dformat /win:xxxx /log:<file>,
which appears like it will be at the same position each time.

And also - Oron from M-Systems said something about saving the table,
and never writing to it.  That's not quite what you do.  You check for
the bad blocks, and then re-write the table.  Am I correct?

I didn't understand why there is MediaUnit1 and MediaUnit2.

Thanks for the help!

Dvir Oren               <dviro at>
Lucid VON Ltd.     <>
9 Saloniki St.,        Tel-Aviv       Israel
Tel:  +972 3 644 3038  Fax:  +972 3 644 3039

To unsubscribe, send "unsubscribe mtd" to majordomo at

More information about the linux-mtd mailing list