On 2017年01月04日 15:22, Tan, Jianfeng wrote:

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.

Interesting, vhost_init_device_iotlb() only fail when OOM. Do you meet it?


My guess is that, for this feature, without the help of QEMU, vhost kernel module cannot work independently.

Technically it can if your userspace supports device IOTLB APIs too.

Or if you're using static mappings, and preset all mappings through VHOST_IOTLB_UPADATE to make sure no IOTLB misses.

Thanks


Thanks,
Jianfeng

Reply via email to