I did write to the drive by I/O operations a file that you send me long time ago that would fill each LBA with it's LBA Value. In other words is an "image file" divided in "sectors" that would write to the drive that pattern with LBA number. Remember that ? Ok, so i did write it to my test drive and then when i go to the operations to read by HEAD and select only head 0 and select only track 0 or cylinder 0 at a physical place (i'm not talking about reading C/H/S notation i'm talking intro reading what is indeed on that specific track at drive level without using translator sub-system) i can read on that physical track up until what would be LBA 170 (Sector 171 as LBA 0 would use one sector) so on that specific track i can read the pattern that i've written with the image file up untill that sector 171 and reading anything that goes past it will produce error on HRT that would then write that !BAD pattern on the output.

Is it possible that one of the heads is failing during calibration? Can you determine if your bad sectors correspond to one particular head?

There are bad sectors across ALL heads ... I don't think that a particular head is completly gone as i can at least read some data with each of the heads .... But the drive might detect that the heads are no longer working properly. Also the end of the drive can't be read ....

Attachment:

1.jpg [ 52.88 KiB | Viewed 669 times ]

Also i don't know what i've done yesterday, if it was because the regen translator experience (i tested super format with all options that i could think of) or if it was because i ws messing with that SET command to attempt to turn on re-location but now the G-List do have entries !!!!

Why are there numerous duplicate entries in the Glist? Where and how does the firmware keep track of the pending defects? Have any of the modules changed since you began experimenting?

I don't have a clue about why there are duplicate entries on the G-List. I don't even think that this old drive would have a Pending List. Some old drives only have G and not "pending". Other will have Pending and G as one list and some "flag" to mark a pending sector on the same G-List.

Some modules did change including translator ones. Here you have the modules NOW :

FWIW, I notice that Toshiba's Glist consists of several parts, with flags for pending sectors as well as reallocated ones (as you say). However, your WD Glist doesn't appear to contain anything other than reallocated sectors.

Maybe the pending sectors are stored in RAM? If the host writes to one of these sectors, then it would be added to the Glist. Otherwise the list of pending sectors would be discarded after a power cycle, in which case these bad sectors would be rediscovered only when the host next attempts to read them.

You could test my RAM-resident relolist hypothesis by writing to a bad sector before and after a power cycle.

Scan a bad area with Victoria. This should result in bad sectors being added to the RAM-resident relolist.

Choose one of these pending sectors and overwrite it. Check whether the Glist has been incremented (Yes?).

Read back the pending sector. Is the sector now readable (Yes?)? If so, then it was reallocated.

Power cycle the drive.

Now choose another of the pending sectors which were previously found by Victoria and overwrite it. Was the Glist incremented (No?)?

Read back the pending sector. Is the sector now readable (No?)? If not, then it was not reallocated (because the RAM-resident relolist was empty).

Overwrite and read that same sector again. This time it should be reallocated (because the first read error should have added it to the relolist).

This wouldn't work.

I have to test more later today and post the picture of the PCB but this experience wouldn't work.

- First i don't think that any sector was indeed swapped by spares. I see the exact same pattern with Victoria at the start of the drive with the same bad blocks on the same spots. I don't even think that my drive is using those lists because the drive is only accessible when setting the super on. The drive is not operating at normal mode. Super On is allowing user access access to extract the data as "emergency" measure but drive is not working at all as it would. Experimentation would have to be carried with a known good drive working in normal mode.

- If you READ a bad sector it should be added to Pending (on normal modern drives). If you write it directly it should be swapped by a spare. It doesn't matter if it's on re-lo / pending list or not. Get a drive with bad sectors and try to zero fill it with something like MHDD erase procedure that actualy use write command or use Victoria or whatever to WRITE to the entire drive or even if you use internal Secure erase, bad sectors will be swapped by spares. Even if there is no read/verify operation and RE-LO/ Pending is empty. As soon as drive checks that it can't write properly it should attempt to swap the sector by a spare. On older drives with specific firmware (very old drives) even reading directly would swap the bad sector by a spare !!! This is not acording to standard so they change behaviour but i do have a drive that if i make a bad sector with write long using wrong ecc and if i power it off/on and if i attempt to read that same sector it's swapped by spare directly ! On any modern drive writting to bad sectors should swap them by spares directly.

I will check the drive again later today. I will restore original FW dump and try again.

Ok, the pattern is exactly the same with the "new" defect list (G-List) or with the original one (i did restore modules and power off/on the drive and confirm changes) :

Attachment:

1.jpg [ 54.6 KiB | Viewed 550 times ]

It looks like original P-List does have duplicated entries as well.

At any rate to place defects on the G-List i can run a HRT WRITE operation. When it reaches a certain point of the start of the LBA space the drive start to make scratching sound. Then it's stuck on BSY. Some duplicated dfects are added but the drive will not stay out of BSY even with soft reset and have to be re-powered....

If you READ a bad sector it should be added to Pending (on normal modern drives). If you write it directly it should be swapped by a spare. It doesn't matter if it's on re-lo / pending list or not.

My point is that, if your drive is power cycled after a bad read, it does not remember that a particular sector was bad (because there is no pending list). So, if you now write to this previously identified bad sector (without reading it again beforehand), the drive should treat it just like a good one.

Ok .... I guess that the drive just "detects" that something is not fine with heads, maybe it tests heads resistence or whatever and fails and it goes intro a special mode where translator is not loaded to prevent even more damage. Super On unlocks that state or loads the translator and that's it.

The drive is too bad to recover or "fix". Even if i could use Self-Scan there would be way more defects than the P-List and G-list capacity could fit ...

Who is online

You cannot post new topics in this forumYou cannot reply to topics in this forumYou cannot edit your posts in this forumYou cannot delete your posts in this forumYou cannot post attachments in this forum