(I should really do another TODO list shouldn't I ...)
"background check/repair" is stable in 2.6.18 and later. (maybe even eariler, I'm not sure).. You echo check > /sys/block/mdX/md/sync_action where X is the number of the md array. This causes a background check to run which will read all block and trigger auto-recovery of any read errors. Any inconsistencies will be counted and included in cat /sys/block/mdX/md/mismatch_cnt If you instead
echo repair > /sys/block/mdX/md/sync_action
it will do the same check process but if any inconsistencies are found they will automatically be corrected.
Finally you can echo idle > /sys/block/mdX/md/sync_action
to abort any running check or repair.
