On 2014-10-22 10:44, Michael S. Tsirkin wrote: > On Wed, Oct 08, 2014 at 11:04:28AM +0200, Cornelia Huck wrote: >> On Tue, 07 Oct 2014 18:24:22 -0700 >> Andy Lutomirski <l...@amacapital.net> wrote: >> >>> On 10/07/2014 07:39 AM, Cornelia Huck wrote: >>>> This patchset aims to get us some way to implement virtio-1 compliant >>>> and transitional devices in qemu. Branch available at >>>> >>>> git://github.com/cohuck/qemu virtio-1 >>>> >>>> I've mainly focused on: >>>> - endianness handling >>>> - extended feature bits >>>> - virtio-ccw new/changed commands >>> >>> At the risk of some distraction, would it be worth thinking about a >>> solution to the IOMMU bypassing mess as part of this? >> >> I think that is a whole different issue. virtio-1 is basically done - we >> just need to implement it - while the IOMMU/DMA stuff certainly needs >> more discussion. Therefore, I'd like to defer to the other discussion >> thread here. > > I agree, let's do a separate thread for this. > I also think it's up to the hypervisors at this point. > People talked about using ACPI to report IOMMU bypass > to guest. > If that happens, we don't need a feature bit.
I thought about this again, and I'm not sure anymore if we can use ACPI to "black-list" the incompatible virtio devices. Reason: hotplug. To my understanding, the ACPI DRHD tables won't change during runtime when a device shows up or disappears. We would have to isolate virtio devices from the rest of the system by using separate buses for it (and avoid listing those in any DRHD table) and enforce that they only get plugged into those buses. I suppose that is not desirable. Maybe it's better to fix virtio /wrt IOMMUs. Jan -- Siemens AG, Corporate Technology, CT RTC ITP SES-DE Corporate Competence Center Embedded Linux