On 2016?10?07? 12:24, Michael S. Tsirkin wrote: > On Wed, Sep 28, 2016 at 04:25:12PM +0800, Jason Wang wrote: >> Negotiate VIRTIO_F_IOMMU_PLATFORM to have IOMMU support. >> >> Signed-off-by: Jason Wang <jasowang at redhat.com> >> --- >> Changes from v1: >> - remove unnecessary NEED_MAPPING flag > One thing we probably should do is enable this flag > with VFIO but not with UIO or VFIO-noiommu.
Sounds good, will try do it in next version. >> --- >> drivers/net/virtio/virtio_ethdev.h | 3 ++- >> drivers/net/virtio/virtio_pci.h | 3 ++- >> 2 files changed, 4 insertions(+), 2 deletions(-) >> >> diff --git a/drivers/net/virtio/virtio_ethdev.h >> b/drivers/net/virtio/virtio_ethdev.h >> index 2ecec6e..04a06e2 100644 >> --- a/drivers/net/virtio/virtio_ethdev.h >> +++ b/drivers/net/virtio/virtio_ethdev.h >> @@ -63,7 +63,8 @@ >> 1u << VIRTIO_NET_F_CTRL_RX | \ >> 1u << VIRTIO_NET_F_CTRL_VLAN | \ >> 1u << VIRTIO_NET_F_MRG_RXBUF | \ >> - 1ULL << VIRTIO_F_VERSION_1) >> + 1ULL << VIRTIO_F_VERSION_1 | \ >> + 1ULL << VIRTIO_F_IOMMU_PLATFORM ) > Space before ) looks kind of ugly. Will fix this. > >> >> /* >> * CQ function prototype >> diff --git a/drivers/net/virtio/virtio_pci.h >> b/drivers/net/virtio/virtio_pci.h >> index 3430a39..0aa0015 100644 >> --- a/drivers/net/virtio/virtio_pci.h >> +++ b/drivers/net/virtio/virtio_pci.h >> @@ -138,6 +138,7 @@ struct virtnet_ctl; >> #define VIRTIO_RING_F_INDIRECT_DESC 28 >> >> #define VIRTIO_F_VERSION_1 32 >> +#define VIRTIO_F_IOMMU_PLATFORM 33 >> >> /* >> * Some VirtIO feature bits (currently bits 28 through 31) are >> @@ -145,7 +146,7 @@ struct virtnet_ctl; >> * rest are per-device feature bits. >> */ >> #define VIRTIO_TRANSPORT_F_START 28 >> -#define VIRTIO_TRANSPORT_F_END 32 >> +#define VIRTIO_TRANSPORT_F_END 34 >> > This seems unused. Drop it? Ok. > >> /* The Guest publishes the used index for which it expects an interrupt >> * at the end of the avail ring. Host should ignore the avail->flags >> field. */ >> -- >> 2.7.4