On 09/10/2018 21:51, David Hildenbrand wrote:
+static void vfio_ap_realize(DeviceState *dev, Error **errp) +{ + int ret; + char *mdevid; + Error *local_err = NULL; + VFIOGroup *vfio_group; + APDevice *apdev = AP_DEVICE(dev); + VFIOAPDevice *vapdev = VFIO_AP_DEVICE(apdev); + + vfio_group = vfio_ap_get_group(vapdev, &local_err); + if (!vfio_group) { + goto out_err; + } + + vapdev->vdev.ops = &vfio_ap_ops; + vapdev->vdev.type = VFIO_DEVICE_TYPE_AP; + mdevid = basename(vapdev->vdev.sysfsdev); + vapdev->vdev.name = g_strdup_printf("%s", mdevid); + vapdev->vdev.dev = dev; + + ret = vfio_get_device(vfio_group, mdevid, &vapdev->vdev, &local_err); + if (ret) { + goto out_get_dev_err; + } + + /* Enable hardware to intepret AP instructions executed on the guest */ + object_property_set_bool(OBJECT(qdev_get_machine()), true, "apie", NULL); +I commented on the old version that this is wrong (if I am not starting to lose my memory). This has to go. (there is no such property, this will simply report an error we ignore) (can most probably be fixed when applying)
+1 absolutely no problem to remove this line. I also tested without this line. -- Pierre Morel Linux/KVM/QEMU in Böblingen - Germany
