I'll bet that you have always had a subdirectory of the exact same
filesystem mounted somewhere else ro, right?
The new NFS mount code will put those in the same superblock, and
whichever directory gets mounted first will determine whether or not the
superblock is marked as read-only.
Basically, NFS is now doing the exact same thing that local filesystems
have been doing all the time: if it is on the same disk, then it is all
represented by the same superblock. OTOH, if your server is exporting
more than one partition, then different partitions will be represented
by different superblocks.
We need to do this for the same reason that local filesystems do it: it
is the only way to ensure cache consistency. Otherwise, if you make
changes to a file that happens to be mounted in more than one place,
then you will see inconsistent results on the other mountpoints.