In r345811 I introduced a bug when I copied the `malloc()` of the fake-page array from one place to another by omitting the `M_ZERO`. Putting it back in `dmar_bus_dmamap_load_phys()` and `dmar_bus_dmamap_load_buffer()` is an obvious solution, however it appears that `nvdimm_spa_uio()` and `nvdimm_spa_g_all_unmapped()` also make the same mistake.
Currently `vm_page_initfake()` has some code in it to support re-initialization which doesn't appear to have any actual use. To address the current improper initialization issues and guard against any future ones get rid of of the unused re-initialization case and have `vm_page_initfake()` zero the vm_page_t.