I've upgraded my kernel to 3.1.4 and it looks like the problem is fixed: I didn't have to eject my drive this time in order to verify the md5sum. It used to work fine as far as I recall, and so this is probably a bug introduced fairly recently.