A page must not become invalid while vm_fault_soft_fast() is attempting
to map unbusied pages for reading.
Note that all callers hold the object write lock already, and
vm_page_set_invalid() asserts the object write lock.
I am not really sure it is wise to permit clearing of valid bits without
xbusy, either. Currently all vm_page_invalid() callers have the page
xbusied, but there is one user of vm_page_set_invalid() that only
sbusies the page. It can be trivially converted to xbusy the page, I
think. Is there any reason to permit clearing of valid bits from a
shared-busy page?