|
From: | Alexander Graf |
Subject: | Re: [Qemu-devel] [PATCH 2/2] arm/virt: Mark pcie controller node as dma-coherent |
Date: | Fri, 3 Jun 2016 17:25:52 +0200 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 |
On 06/03/2016 05:16 PM, Mihai Claudiu Caraman wrote:
-----Original Message----- From: Peter Maydell [mailto:address@hidden Sent: Friday, June 03, 2016 5:38 PM To: Mihai Claudiu Caraman <address@hidden> Cc: Bogdan Purcareata <address@hidden>; QEMU Developers <address@hidden>; Peter Crosthwaite <address@hidden>; Alexander Graf <address@hidden>; qemu-arm <address@hidden>; Eric Auger <address@hidden> Subject: Re: [Qemu-devel] [PATCH 2/2] arm/virt: Mark pcie controller node as dma-coherent On 3 June 2016 at 15:22, Mihai Claudiu Caraman <address@hidden> wrote:In particular for virtual and emulated devices the host CPU behaves as a DMA coherent 'device'. This should have been stated in patch description.Wouldn't that imply that we should just always have the "dma-coherent" property set, and we don't need to do any of the messing around looking at the host sysfs ? thanks -- PMMWe can always set "dma-coherent" for virtual and emulated devices but not for passthrough devices. So we can't have one PCIe controller for all devices marked as "dma-coherent".
The original patch is about the case where PCI is already cache coherent on the host.
I think at the end of the day this is simply outside of QEMU's scope to decide. What we can do is set dma-coherent per default (if Will and Ard agree) on the default PCIe bus and add code that allows to spawn a secondary PCIe bus which can then have different dma-coherent attributes and that you can then plug your non-coherent vfio devices into.
Alex
[Prev in Thread] | Current Thread | [Next in Thread] |