dd if=/dev/urandom bs=1048576 count=5000 | tee test.bin | md5sum
Maybe someone will come along and provide references to a a definitive answer on what the behaviour will be.
My point is: it's not trivial to ensure that you're actually testing the right thing.
True, but this doesn't necessarily guarantee that the subsequent read will come from the card and not the cache.
It might as currently implemented; I don't know. But without specific evidence that it does and will continue to do so indefinitely, I wouldn't assume it for verification purposes.
I make the same point again: it's not trivial to ensure that you're actually testing the right thing.
Unplugging and replugging the card really should invalidate the cache though.