From mboxrd@z Thu Jan 1 00:00:00 1970 From: Catalin Marinas Subject: Re: [RFC/RFT PATCH 0/3] arm64: KVM: work around incoherency with uncached guest mappings Date: Thu, 5 Mar 2015 12:03:49 +0000 Message-ID: <20150305120348.GD7712@e104818-lin.cambridge.arm.com> References: <20150304122956.GT28951@e104818-lin.cambridge.arm.com> <20150304141212.GA5352@hawk.usersys.redhat.com> <20150304142943.GU28951@e104818-lin.cambridge.arm.com> <54F73ACF.1090605@redhat.com> <20150304172855.GA28951@e104818-lin.cambridge.arm.com> <54F82C06.2000701@redhat.com> <20150305110415.GA7712@e104818-lin.cambridge.arm.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: Sender: kvm-owner@vger.kernel.org To: Peter Maydell Cc: KVM devel mailing list , Ard Biesheuvel , Marc Zyngier , Paolo Bonzini , Laszlo Ersek , "kvmarm@lists.cs.columbia.edu" , "linux-arm-kernel@lists.infradead.org" List-Id: kvmarm@lists.cs.columbia.edu On Thu, Mar 05, 2015 at 08:52:49PM +0900, Peter Maydell wrote: > On 5 March 2015 at 20:04, Catalin Marinas wrote: > > On Thu, Mar 05, 2015 at 11:12:22AM +0100, Paolo Bonzini wrote: > >> On 04/03/2015 18:28, Catalin Marinas wrote: > >> >> > Can you add that property to the device tree for PCI devices too? > >> > > >> > Yes but not with mainline yet: > >> > > >> > http://thread.gmane.org/gmane.linux.kernel.iommu/8935 > >> > > >> > We can add the property at the PCI host bridge level (with the drawback > >> > that it covers all the PCI devices), like here: > >> > >> Even covering all PCI devices is not enough if we want to support device > >> assignment of PCI host devices. > > > > Can we not have another PCI bridge node in the DT for the host device > > assignments? > > I'd hate to have to do that. PCI should be entirely probeable > given that we tell the guest where the host bridge is, that's > one of its advantages. I didn't say a DT node per device, the DT doesn't know what PCI devices are available (otherwise it defeats the idea of probing). But we need to tell the OS where the host bridge is via DT. So the guest would be told about two host bridges: one for real devices and another for virtual devices. These can have different coherency properties. -- Catalin