-is the number of blocks which are tested at a time. The default is 16.
-Increasing this number will increase the efficiency of
-.B badblocks
-but also will increase its memory usage.
-.B Badblocks
-needs memory proportional to the number of blocks tested at once, in
-read-only mode, proportional to twice that number in read-write mode,
-and proportional to three times that number in non-destructive read-write
-mode. If you set the number-of-blocks parameter to too high a value,
+is the number of blocks which are tested at a time. The default is 64.
+.TP
+.BI \-d " read delay factor"
+This parameter, if passed and non-zero, will cause bad blocks to sleep
+between reads if there were no errors encountered in the read
+operation; the delay will be calculated as a percentage of the time it
+took for the read operation to be performed. In other words, a value of
+100 will cause each read to be delayed by the amount the previous read
+took, and a value of 200 by twice the amount.
+.TP
+.BI \-e " max bad block count"
+Specify a maximum number of bad blocks before aborting the test. The
+default is 0, meaning the test will continue until the end of the test
+range is reached.
+.TP
+.B \-f
+Normally, badblocks will refuse to do a read/write or a non-destructive
+test on a device which is mounted, since either can cause the system to
+potentially crash and/or damage the filesystem even if it is mounted
+read-only. This can be overridden using the
+.B \-f
+flag, but should almost never be used --- if you think you're smarter
+than the