I think we need something for pg_upgrade to rewrite existing VMs. Otherwise a large read only database would suddenly require a massive revacuum after upgrade, which seems bad. That can wait for now until we all agree this patch is sound.
Since we need to rewrite the "vm" map, I think we should call the new map "vfm"
+1 for changing the name, as now map contains more than visibility