hv: vpci: minor refine about MSI/MSI-X de-initialization

About the MSI/MSI-X Capability, there're some fields of it would never been changed
once they had been initialized. So it's no need to reset them once the vdev instance
is still used. What need to reset are the fields which would been changed by guest
at runtime.

Tracked-On: #4550
Signed-off-by: Li Fei1 <fei1.li@intel.com>
This commit is contained in:
Li Fei1
2020-06-30 14:56:55 +08:00
committed by wenlingz
parent 3b120807c9
commit 41805eb2e8
3 changed files with 4 additions and 4 deletions

View File

@@ -284,7 +284,8 @@ void deinit_vmsix(struct pci_vdev *vdev)
if (has_msix_cap(vdev)) {
if (vdev->msix.table_count != 0U) {
ptirq_remove_msix_remapping(vpci2vm(vdev->vpci), vdev->pdev->bdf.value, vdev->msix.table_count);
(void)memset((void *)&vdev->msix, 0U, sizeof(struct pci_msix));
(void)memset((void *)&vdev->msix.table_entries, 0U, sizeof(vdev->msix.table_entries));
vdev->msix.is_vmsix_on_msi_programmed = false;
}
}
}