Badblocks behavior on read

I wanted to burn in a batch of refurb drives before making a pool and they’ve all completed except for one.

Console looks like:
me@truenas:~/badblocks$ sudo badblocks -b 8192 -c 32 -e 1 -wsv -o ./burnin-ST28000NM000C-3WM103-SERIALNUM-20250208-0324+0.bb /dev/sde
Checking for bad blocks in read-write mode
From block 0 to 3418095615
Testing with pattern 0xaa: done
Reading and comparing: done
Testing with pattern 0x55: done
Reading and comparing: done
Testing with pattern 0xff: done
Reading and comparing: done
Testing with pattern 0x00: done
Reading and comparing: 92.92% done, 306:07:36 elapsed. (0/0/0 errors)

Reporting page hasn’t shown any IO on the drive for 1.5 hours. The % complete and elapsed time are unchanged. ps shows the process is still running. strace doesn’t seem to be an option. Nothing related in dmesg.

Anyone seen behavior like this from badblocks before? I’d think if there was a read issue there’d be a kernel message by now and the status messages would be updating. Hate to restart a 13 day test but strange behavior that I wish I could explain before ignoring. 4 other disks completed successfully.

I personally have not seen this before, however if the drive is having reading error, it could take a while. I’d give it another several hours to see if anything changes. After 4 hours where it seems unresponsive, I would kill the task and then run BadBlocks again, only using the 0x00 test, it was the last pattern I believe. See if that passes.

Best of luck to you.

1 Like

That did it - posting details for anyone who might see it in the future.

I gave it like 6 hours and still never saw any IO or anything in dmesg and the process was listed as sleeping. It responded normally to ^C with:

Interrupted at block 3176103904

so I backed up a few blocks and restarted the last pattern:
me@truenas:~/badblocks$ sudo badblocks -b 8192 -c 32 -wsv -o ./burnin-ST28000NM000C-3WM103-SERIAL-20250220+0.bb -t 0x00 /dev/sde 3418095615 3176095712
Checking for bad blocks in read-write mode
From block 3176095712 to 3418095615
Testing with pattern 0x00: ddone
Reading and comparing: done
Pass completed, 0 bad blocks found. (0/0/0 errors)

2 Likes

That was unfortunate that happened and I am curious why. Was it the drive or the computer? You will never know.

The good thing is, with ZFS you will have redundancy so if/when a drive gives you problems, your data should still be safe.

Thanks for the follow-up.

The description looks like badblocks died of boredom while running, so I’d blame the computer and release the drive.

2 Likes