Sorry, I forget to reply this comment.
On 12/26/2016 3:44 PM, Yuanhan Liu wrote:
[...]
+
+ /* Does not work when VIRTIO_F_IOMMU_PLATFORM now, why? */
Because this feature need the vhost IOTLB support from the device
emulation. Patches for QEMU hasn't been merged yet, but it has been
there for a while.
Yes. And it's in need of help from QEMU.
Since we don't have the support yet, for sure it won't work. But
I'm wondering why you have to disable it explicitly?
Here we do not have QEMU. Frontend driver talks with vhost-net through
virtio_user_dev. And both ends claim to support VIRTIO_F_IOMMU_PLATFORM.
So this feature bit will be negotiated if we don't explicitly disable
it. In my previous test, it fails in vhost_init_device_iotlb() of vhost
kernel module. My guess is that, for this feature, without the help of
QEMU, vhost kernel module cannot work independently.
Thanks,
Jianfeng