From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:43078) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UXn0K-0000By-8V for qemu-devel@nongnu.org; Thu, 02 May 2013 02:28:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UXn0F-0006iQ-V7 for qemu-devel@nongnu.org; Thu, 02 May 2013 02:28:32 -0400 Received: from ozlabs.org ([2402:b800:7003:1:1::1]:49455) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UXn0F-0006hT-IU for qemu-devel@nongnu.org; Thu, 02 May 2013 02:28:27 -0400 Date: Thu, 2 May 2013 16:28:22 +1000 From: David Gibson Message-ID: <20130502062822.GK13041@truffula.fritz.box> References: <20130501043524.GO20202@truffula.fritz.box> <51813E87.2030704@redhat.com> <20130502030508.GG13041@truffula.fritz.box> <5181F8A6.2000201@redhat.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="8SdtHY/0P4yzaavF" Content-Disposition: inline In-Reply-To: <5181F8A6.2000201@redhat.com> Subject: Re: [Qemu-devel] [PATCH 09/17] memory: iommu support List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: qemu-devel@nongnu.org --8SdtHY/0P4yzaavF Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, May 02, 2013 at 07:24:54AM +0200, Paolo Bonzini wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 >=20 > Il 02/05/2013 05:05, David Gibson ha scritto: > >>> I think the problem is that we do not have reference counting, > >>> and this makes it simpler to manage the lifetime. It can be > >>> changed later. > > I don't really follow this logic. In the existing case, the iommu=20 > > target is always system memory, and there's already=20 > > address_space_memory which always exists. >=20 > But does the tce->iommu address space always exist? Can you have > multiple domains and so on? I'm not sure exactly what you mean here. We have multiple "partitionable endpoints" that are somewhat equivalent to iommu domains on intel - each corresponds to a different DMA address space. By convention, though, these are configured by firmware and never changed during runtime. For simplicity in the qemu guest case, we only ever have one partitionable endpoint per (guest) PCI host bridge. That's not really a limitation, because pseries can happily support multiple host bridges (even dozens or hundreds). > I can surely change it if you prefer, after all you're the only user > right now (address_space_memory always exists). But I'm not 100% sure > it will create more problems than it solves. Well, we're talking here about the *target* address space of the iommu. So that's address_space_memory for us too. In fact I don't know of any realistic cases where the target AS won't be address_space_memory, although it's certainly theoretically possible. --=20 David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson --8SdtHY/0P4yzaavF Content-Type: application/pgp-signature; name="signature.asc" Content-Description: Digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.12 (GNU/Linux) iEYEARECAAYFAlGCB4YACgkQaILKxv3ab8YxhQCeI3odz+qUgQcK+1aSeoVQZzcq z/IAnR2BnVUJQ2O15oQY5J1RSkRcsF42 =zQNb -----END PGP SIGNATURE----- --8SdtHY/0P4yzaavF--