-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Ragnar Kjørstad, on Montag, 10. September 2001 10:39 wrote: [cut] > It's better than my patch, but still not "correct": > * In my case pe_lock() failed, so it had to be "removed" as well. Was > that not the case for you? > * ret==-1 and ret<to_read should probably be handled differently. > * For ret>0 && ret<to_read the regular execution path could be followed. > * When red==-1 there should be a seek on pv[src_pv_index], so the > possition of the filehandle is set correctly. (now it's undefined) > * maybe red=SECTOR_SIZE; would be better? see next comment. after this msg i search through the syslog: Aug 29 13:29:20 bolm kernel: hdh: read_intr: error=0x40 { UncorrectableError }, LBAsect=95091302, sector=95091239 Aug 29 13:29:20 bolm kernel: end_request: I/O error, dev 22:41 (hdh), sector 95091239 what does this locking do ? i mean copying these few remaining bytes took about 10minutes... so perhaps it had problems with locking but skipped it ? or would it abort in such a case ? > > tools/pvmove.c: > > > > replace: > > int buffer_size = 64*1024; > > with: > > int buffer_size = 512; > > > > this is an advantage to your patch, because pvmove then copys only 512 > > byte-blocks and if there's only one block damaged u don't loose 64kb > > data. this has one disadvantage: it's SLOW... and slower than that ;) > > This is not needed if the read loop is allowed to continue. and it also copies the whole 64kb if only one 512 byte block damaged with only 512 bytes of crap ? > It would be great if someone took this patch, made the proposed changes, > and integrated it into the standard tools with an "ingore-read-errors" > flag... hint hint. hehe ;) fejf - -- Backups are usefull. Most often when you don't have one ;) -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.6 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE7nKnR7Xtp66ctWuIRAubiAJ9YHdZez6QGOUut63knCXcc0kf5DQCgrehc Zyntw0mfYTTKn7se0VJZ7O8= =+9/r -----END PGP SIGNATURE-----