For simplicity, it is best to sync;reboot after any filesystem checks on the player. That is what the FAQ should recommend.
For those "in the know", if you run fsck on a "mounted read-only" filesystem, it is possible for fsck to "repair" something without that knowledge being passed on to the kernel filesystem code.. thus the kernel may have one view in memory, when in fact fsck has written a differing view to the disk.
This will confuse the player, and possibly result in filesystem corruption if the filesystem is later remounted rw (dubious, but perhaps possible). This is why the fsck program warns against running it on a mounted filesystem, even when the filesystem is "read-only".
So, again, the simplest rote sequence for everyone:
ro
fsck -fay /
fsck -fay /drive0
fsck -fay /drive1
sync
[reboot the player]
Strictly speaking, the "-fay" could be replaced with "-ay", to avoid having fsck run on filesystems it "knows" are okay. But this discussion was about forcing checks, so..
-ml