I have released a new version of my ddrescue passthrough patch which can be found at the following site:
https://sourceforge.net/projects/ddrutility/files/ddrescue%20patches/passthrough%20patch/

The main change is that previously when using the passthrough option and an abnormal error would happen (something other than a normal read error, like the drive locking up), ddrescue would exit without saving the most recent version of the logfile, which could mean that some data would need to be re-read. It will now save the logfile when it exits.

The second change is adding an option that will allow the marking of the current block if an abnormal error happens. This would be useful if the drive in question gets abnormal errors when reading bad sectors. By default it would not mark it as a bad sector/block, so when restarting ddrescue (likely after power cycling the drive) it would try to read the bad sector again, causing another abnormal error. The new option will allow this bad marking so that a rescue may be resumed without attempting to re-read the bad block until trimming and scraping.

It has come to my attention that an additional benefit to using the ata-passthrough or scsi-passthrough option is that under some conditions, it will catch an abnormal error and exit, where a normal ddrescue will just start marking all the blocks as failed which is very undesirable. I do not know if this works under all conditions.


The changelog is as follows:

ddrescue-1.19 SGIO patch-2.1 20150106
Added code so that if an error other than a normal read error happens, ddrescue will now properly exit saving the most recent changes to the logfile. The previous version exited abruptly without saving the logfile.

Added the option --mark-abnormal-error, so when an abnormal error happens during a read attempt (that causes program exit) the cluster is marked as non-trimmed. A single sector read (clustersize 1) would result in the sector being marked as bad.

  Added short sense key definitions to abnormal error output.


Enjoy!
Scott

_______________________________________________
Bug-ddrescue mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-ddrescue

Reply via email to