ppt_unassign_device() and ppt_reset_device() cleared Memory Space
Enable before tearing down MSI-X. Masking a vector writes the MSI-X
table, which lives in a device BAR, so once decode is disabled the
write is an Unsupported Request. On a live guest (msix_alloc > 0)
the UR is reported through APEI as a fatal hardware error and the
host panics.
Tear down MSI/MSI-X with decode still on, then gate decode and DMA
before the reset.
See PCI Express Base Specification Revision 5.0 section 7.5.1.1.3
(Command register, Memory Space Enable)