Richard Elling wrote: > David wrote: >> I have some code that implements background media scanning so I am able to >> detect bad blocks well before zfs encounters them. I need a script or >> something that will map the known bad block(s) to a logical block so I can >> force zfs to repair the bad block from redundant/parity data. >> >> I can't find anything that isn't part of a draconian scanning/repair >> mechanism. Granted the zfs architecture can map physical block X to >> logical block Y, Z, and other letters of the alphabet .. but I want to go >> backwards. >> >> 2nd part of the question .. assuming I know /dev/dsk/c0t0d0 has an ECC error >> on block n, and I now have the appropriate storage pool info & offset that >> corresponds to that block, then how do I force the file system to repair the >> offending block. >> >> This was easy to address in LINUX assuming the filesystem was built on the >> /dev/md driver, because all I had to do is force a read and twiddle with the >> parameters to force a non-cached I/O and subsequent repair. >> > > Just read it. > -- richard > >> It seems as if zfs's is too smart for it's own good and won't let me fix >> something that I know is bad, before zfs has a chance to discover it for >> itself. :) >> >>
I think what the OP was saying is that he somehow knows that an unallocated block on the disk is bad, and he'd like to tell ZFS about it ahead of time. But repair implies there's data to read on the disk; ZFS won't read disk blocks it didn't write. - Bart -- Bart Smaalders Solaris Kernel Performance [EMAIL PROTECTED] http://blogs.sun.com/barts "You will contribute more with mercurial than with thunderbird." _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss