I would back up the data before running chkdsk
/r checks for bad sectors and it's a lot of read actions, much slower than /f. If the hdd is about to fail, a chkdsk /r may fail the hdd
Check your hdd SMART data and see if there is anything funny
When running chkdsk on an external device, use diskpart to obtain the correct drive letter
If your hdd is Seagate, I would suggest using SeaTools