Currently, attempting to unplug an NVLink2 device will generally result in the guest crashing. If you're lucky, it instead simply won't work and remain in a "pending unplug" state indefinitely.
There is code we could we could theoretically improve in qemu to tear these devices down better. However since NVLink2 devices aren't hot pluggable in hardware, the guest side drivers usually don't cope with that anyway. So, patch 4/4 blocks attempts to unplug NVLink2 devices. The others are some preliminary cleanups to get us towards there. David Gibson (4): spapr: Refactor locating NVLink2 devices for device tree creation spapr: Helper to determine if a device is NVLink2 related spapr: Fix failure path for attempting to hot unplug PCI bridges spapr: Don't allow unplug of NVLink2 devices hw/ppc/spapr_pci.c | 6 ++ hw/ppc/spapr_pci_nvlink2.c | 120 +++++++++++++++++++++++++----------- include/hw/pci-host/spapr.h | 1 + 3 files changed, 91 insertions(+), 36 deletions(-) -- 2.25.1