Low-level marking of bad sectors?

T

Taed Wynnell

I'm hoping that someone could explain this weird behavior to me. It sounds
to me that there is some low-level bad sector information that is not
destroyed by formatting, but I'm pretty sure that it's not part of the
drive's firmware (such as the G-list or P-list). Let me explain my most
recent experiment.

1. I have an IDE drive (Drive A) using NTFS with known bad sectors which
were detected by CHKDSK /R. No surprise, and the appropriate sectors are in
the $BadClus list if I look at them with NFI.
2. I then use normal software mirroring and mirror it with another good
drive (Drive B), and the mirror completes fine. Note that the $BadClus is
also copied to the new drive, even though that drive itself has no bad
sectors. But that's fine and the way that mirroring is supposed to work --
a bad sector on one of the drives gets mirrored as "bad" on the other drive.
3. I then break the mirror and remove Drive A (the drive with actual bad
sectors).
4. A CHKDSK /R and looking at $BadClus still confirms that the good Drive B
has sectors marked as bad. Again, no surprise.
5. I then delete the partition on Drive B, recreate another partition, and
reformat it. A CHKDSK (no /R yet) indicates that there are no bad sectors.
6. I then do a CHKDSK /R, which runs very quickly, taking maybe only 30
seconds to do 40 GB, so clearly it was not really doing a write-read test on
the drive.

Shockingly, after that, it reports that there are exactly the same number of
bad sectors as there were previously! But that drive doesn't have any
actual bad sectors (just the "virtual" ones inherited from the other
mirror)! And the $BadClus information was removed by re-creating the
partition and reformatting it! And I re-looked at the SMART information on
Drive B, and it still reports that there are no errors (including no
reallocated sectors)!

I even used the DOS-based tools that came with my drive to perform a wipe
and another format, and after re-creating the partitions and formatting yet
again, after another CHKDSK /R, the same allegedly-bad sectors returned.

And as a final test, I took another brand-new Drive C and did the same
procedure, and sure enough, it now has these fake bad sectors that I can't
get rid of.

I even grabbed the program called Flobo HDDBadSectorRepair, though it
reported that the good drive actually had no bad sectors. (But I'm a bit
suspicious about that program anyway; does anyone have any experience with
it?)

So, it seems that there must be someplace that a sector is marked as bad by
software (not by the drive firmware) which is not destroyed by formatting
the drive.

Can anyone explain that process and where that information is stored?

My end goal is that I want to be able to get those fake bad sectors off of
my completely-good drive!

Thanks in advance for any suggestions!
 
A

Arno Wagner

Previously Taed Wynnell said:
I'm hoping that someone could explain this weird behavior to me. It sounds
to me that there is some low-level bad sector information that is not
destroyed by formatting, but I'm pretty sure that it's not part of the
drive's firmware (such as the G-list or P-list). Let me explain my most
recent experiment.
1. I have an IDE drive (Drive A) using NTFS with known bad sectors which
were detected by CHKDSK /R. No surprise, and the appropriate sectors are in
the $BadClus list if I look at them with NFI.
2. I then use normal software mirroring and mirror it with another good
drive (Drive B), and the mirror completes fine. Note that the $BadClus is
also copied to the new drive, even though that drive itself has no bad
sectors. But that's fine and the way that mirroring is supposed to work --
a bad sector on one of the drives gets mirrored as "bad" on the other drive.
3. I then break the mirror and remove Drive A (the drive with actual bad
sectors).
4. A CHKDSK /R and looking at $BadClus still confirms that the good Drive B
has sectors marked as bad. Again, no surprise.
5. I then delete the partition on Drive B, recreate another partition, and
reformat it. A CHKDSK (no /R yet) indicates that there are no bad sectors.
6. I then do a CHKDSK /R, which runs very quickly, taking maybe only 30
seconds to do 40 GB, so clearly it was not really doing a write-read test on
the drive.
Shockingly, after that, it reports that there are exactly the same number of
bad sectors as there were previously! But that drive doesn't have any
actual bad sectors (just the "virtual" ones inherited from the other
mirror)! And the $BadClus information was removed by re-creating the
partition and reformatting it! And I re-looked at the SMART information on
Drive B, and it still reports that there are no errors (including no
reallocated sectors)!
I even used the DOS-based tools that came with my drive to perform a wipe
and another format, and after re-creating the partitions and formatting yet
again, after another CHKDSK /R, the same allegedly-bad sectors returned.
And as a final test, I took another brand-new Drive C and did the same
procedure, and sure enough, it now has these fake bad sectors that I can't
get rid of.
I even grabbed the program called Flobo HDDBadSectorRepair, though it
reported that the good drive actually had no bad sectors. (But I'm a bit
suspicious about that program anyway; does anyone have any experience with
it?)
So, it seems that there must be someplace that a sector is marked as bad by
software (not by the drive firmware) which is not destroyed by formatting
the drive.
Can anyone explain that process and where that information is stored?
My end goal is that I want to be able to get those fake bad sectors off of
my completely-good drive!
Thanks in advance for any suggestions!

Very interesting! I would have thought this to be impossible. Maybe this
bad-list is not on the drive itself but in the Windows-Installation
somewhere?

Arno
 
B

Bob Willard

Taed said:
I'm hoping that someone could explain this weird behavior to me. It sounds
to me that there is some low-level bad sector information that is not
destroyed by formatting, but I'm pretty sure that it's not part of the
drive's firmware (such as the G-list or P-list). Let me explain my most
recent experiment.

1. I have an IDE drive (Drive A) using NTFS with known bad sectors which
were detected by CHKDSK /R. No surprise, and the appropriate sectors are in
the $BadClus list if I look at them with NFI.
2. I then use normal software mirroring and mirror it with another good
drive (Drive B), and the mirror completes fine. Note that the $BadClus is
also copied to the new drive, even though that drive itself has no bad
sectors. But that's fine and the way that mirroring is supposed to work --
a bad sector on one of the drives gets mirrored as "bad" on the other drive.
3. I then break the mirror and remove Drive A (the drive with actual bad
sectors).
4. A CHKDSK /R and looking at $BadClus still confirms that the good Drive B
has sectors marked as bad. Again, no surprise.
5. I then delete the partition on Drive B, recreate another partition, and
reformat it. A CHKDSK (no /R yet) indicates that there are no bad sectors.
6. I then do a CHKDSK /R, which runs very quickly, taking maybe only 30
seconds to do 40 GB, so clearly it was not really doing a write-read test on
the drive.

Shockingly, after that, it reports that there are exactly the same number of
bad sectors as there were previously! But that drive doesn't have any
actual bad sectors (just the "virtual" ones inherited from the other
mirror)! And the $BadClus information was removed by re-creating the
partition and reformatting it! And I re-looked at the SMART information on
Drive B, and it still reports that there are no errors (including no
reallocated sectors)!

I even used the DOS-based tools that came with my drive to perform a wipe
and another format, and after re-creating the partitions and formatting yet
again, after another CHKDSK /R, the same allegedly-bad sectors returned.

And as a final test, I took another brand-new Drive C and did the same
procedure, and sure enough, it now has these fake bad sectors that I can't
get rid of.

I even grabbed the program called Flobo HDDBadSectorRepair, though it
reported that the good drive actually had no bad sectors. (But I'm a bit
suspicious about that program anyway; does anyone have any experience with
it?)

So, it seems that there must be someplace that a sector is marked as bad by
software (not by the drive firmware) which is not destroyed by formatting
the drive.

Can anyone explain that process and where that information is stored?

My end goal is that I want to be able to get those fake bad sectors off of
my completely-good drive!

Thanks in advance for any suggestions!

Just a thought - There are two flavors of HD wiping: one writes 0s to the
entire HD, while the other (quicker) only writes 0s to the first few hundred
sectors (to wipe everything up through the first FAT or so). Unless you
unleashed the more comprehensive form of wipe, you would not have overwritten
the innermost cylinders which the RAID software may have used to stash the
bad sector list when you created the mirror set.
 
E

Eric Gisin

Since you are using Dynamic Disks, I suspect bad sector information is stored
in the LDM database at the end of the disk. As this is a 1MB area after the
last full cylinder, DOS utilities will not necessarily see it. Use "clean all"
in diskpart instead.

The only thing I can't answer is why chkdsk /r took only 30s. Perhaps RAID 1
does not need it, as a bad sector on one drive can be corrected from the other.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top