lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 7 Aug 2020 11:00:44 +0800
From:   Jason Wang <>
To:     "Michael S. Tsirkin" <>
Subject: Re: [PATCH v2 19/24] vdpa: make sure set_features in invoked for

On 2020/8/6 下午6:00, Michael S. Tsirkin wrote:
> On Thu, Aug 06, 2020 at 03:27:38PM +0800, Jason Wang wrote:
>> On 2020/8/6 下午1:53, Michael S. Tsirkin wrote:
>>> On Thu, Aug 06, 2020 at 11:23:05AM +0800, Jason Wang wrote:
>>>> On 2020/8/5 下午7:40, Michael S. Tsirkin wrote:
>>>>> On Wed, Aug 05, 2020 at 02:14:07PM +0800, Jason Wang wrote:
>>>>>> On 2020/8/4 上午5:00, Michael S. Tsirkin wrote:
>>>>>>> Some legacy guests just assume features are 0 after reset.
>>>>>>> We detect that config space is accessed before features are
>>>>>>> set and set features to 0 automatically.
>>>>>>> Note: some legacy guests might not even access config space, if this is
>>>>>>> reported in the field we might need to catch a kick to handle these.
>>>>>> I wonder whether it's easier to just support modern device?
>>>>>> Thanks
>>>>> Well hardware vendors are I think interested in supporting legacy
>>>>> guests. Limiting vdpa to modern only would make it uncompetitive.
>>>> My understanding is that, IOMMU_PLATFORM is mandatory for hardware vDPA to
>>>> work.
>>> Hmm I don't really see why. Assume host maps guest memory properly,
>>> VM does not have an IOMMU, legacy guest can just work.
>> Yes, guest may not set IOMMU_PLATFORM.
>>> Care explaining what's wrong with this picture?
>> The problem is virtio_vdpa, without IOMMU_PLATFORM it uses PA which can not
>> work if IOMMU is enabled.
>> Thanks
> So that's a virtio_vdpa limitation.

Probably not, I think this goes back to the long debate of whether to 
use DMA API unconditionally. If we did that, we can support legacy 
virtio driver.

The vDPA device needs to provide a DMA device and the virtio core and 
perform DMA API with that device which should work for all of the cases.

But a big question is, do upstream care about out of tree virtio drivers?


> In the same way, if a device
> does not have an on-device iommu *and* is not behind an iommu,
> then vdpa can't bind to it.
> But this virtio_vdpa specific hack does not belong in a generic vdpa code.
>>>> So it can only work for modern device ...
>>>> Thanks

Powered by blists - more mailing lists