Learn how easy it is to sync an existing GitHub or Google Code repo to a SourceForge project! See Demo

Close

#1 Lower blocksize when errors encountered

closed-accepted
Andrew Medico
5
2008-10-07
2008-01-07
Jesse Kornblum
No

The program runs faster when the block size is increased. When errors are encountered blocks containing an error are zero'ed (assuming conv=noerror,sync has been specified). With larger block sizes, however, more data is lost. It would be nice if the program could start with a large block size but if an error is encountered, drop to a smaller block size until the error is past, and then return to the larger block size.

Discussion

  • Jesse Kornblum
    Jesse Kornblum
    2008-02-08

    Logged In: YES
    user_id=448978
    Originator: YES

    Due to the difficulty of adding this feature, it has not been assigned at this time. The nature of the desired behavior would require us to significantly alter the behavior of GNU dd. At this point we do not feel comfortable doing so.

     
  • Andrew Medico
    Andrew Medico
    2008-06-17

    • assigned_to: nobody --> amedico
     
  • Andrew Medico
    Andrew Medico
    2008-06-17

    Logged In: YES
    user_id=141073
    Originator: NO

    I'm currently working on this. To avoid drastically reworking GNU dd, my plan is:

    On error, reread the block in smaller pieces (currently 512 bytes). The next block will then be attempted at the usual block size. This may be slightly slower when a drive has many contiguous errors, but it should be a good starting point.

     
  • Andrew Medico
    Andrew Medico
    2008-10-07

    Implemented in 6.12.1.

     
  • Andrew Medico
    Andrew Medico
    2008-10-07

    • status: open --> closed-accepted