On 04/16/2018 10:51 AM, Halil Pasic wrote:
On 04/16/2018 03:05 PM, Pierre Morel wrote:
+static void vfio_ap_mdev_release(struct mdev_device *mdev)
+{
+ struct ap_matrix_mdev *matrix_mdev = mdev_get_drvdata(mdev);
+
+ kvm_ap_deconfigure_matrix(matrix_mdev->kvm);
+ kvm_ap_interpret_instructions(matrix_mdev->kvm, false);
This call clears the apie in KVM.
This is only OK if we have a single device present until the end of the VM,
otherwise AP instructions in the guest will fail after the release until the end of the VM
or until a new device is plugged.
I agree, this seems wrong.
As I think about this more, you may be correct. I believe that one can
remove a VFIO mediated
device via a sysfs file descriptor. I suppose that could happen while
the guest is still running,
which would mean AP instructions executed on the guest would meet with
an operation exception.
I will have to explore this some more.