And if you're comfortable *writing* kernel code, I would suggest
implementing WORF in geom_mirror :)
I am intrigued, what is this WORF you speak of?
Write On Read Failure. It means that if you can't read a sector but you
have (or can recreate) a copy of the data that's supposed to be on it,
you rewrite that data to force the disk to reallocate the sector. I've
done this manually several times (dd'ed a sector from the other disk in
a mirror). I believe I even posted the procedure at some point; I'll
check my archive.