On Thu, Sep 9, 2021 at 5:21 PM Michael S. Tsirkin <mst@xxxxxxxxxx> wrote: > > On Thu, Sep 09, 2021 at 11:05:06AM +0800, Jason Wang wrote: > > On Wed, Sep 8, 2021 at 8:22 PM Wu Zongyong <wuzongyong@xxxxxxxxxxxxxxxxx> wrote: > > > > > > This series implements the vDPA driver for legacy virtio-pci device. > > > Currently we already have the vDPA driver for modern virtio-pci device > > > only, but there are some legacy virtio-pci devices conforming to the > > > virtio-pci specifications of 0.9.x or older versions. For example, > > > ENI(Elastic Network Interface) of Alibaba ECS baremetal instance is a > > > hardware virtio network device which follows the Virtio PCI Card 0.9.5 > > > Draft specification. Such legacy virtio-pci devices have some > > > inconsistent behaviour with modern virtio-pci devices, so some common > > > codes are split out and modern device specific codes are moved to a > > > separated file. > > > > What worries me a little bit are: > > > > 1) vDPA requires IOMMU_PLATFORM to be supported by the device to work, > > if I understand ENI correctly, it's a legacy device so it can't > > support ACCESS_PLATFORM. Or is it a legacy device that supports > > ACCESS_PLATFORM implicitly. > > 2) vDPA tries to present a 1.0 device, in this case the behavior could > > be ruled by the spec. If we tries to present an 1.0 device on top of > > legacy device we may suffer a lot of issues: > > > > - endian issue: 1.0 use le but legacy may use native endian > > - queue_enable semantic which is missed in the legacy > > - virtqueue size, as you mentioned below > > So this all kind of works when guest and host are > strongly ordered and LE. Case in point x86. > Question is how do we limit this to an x86 guest? > Add a new ioctl declaring that this is the case? I think the most simple way is to disable the driver on non LE host (assuming it tries to use native endian which is kind of impossible). Thanks > > -- > MST > _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linuxfoundation.org/mailman/listinfo/virtualization