From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:47547) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UN7uF-0000jd-KF for qemu-devel@nongnu.org; Tue, 02 Apr 2013 16:34:14 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1UN7uD-0000Rk-Iy for qemu-devel@nongnu.org; Tue, 02 Apr 2013 16:34:11 -0400 Received: from mail-lb0-f179.google.com ([209.85.217.179]:41706) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1UN7uD-0000RZ-Cb for qemu-devel@nongnu.org; Tue, 02 Apr 2013 16:34:09 -0400 Received: by mail-lb0-f179.google.com with SMTP id t1so882414lbd.24 for ; Tue, 02 Apr 2013 13:34:08 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <515B2CE6.3040703@redhat.com> References: <1364919044-18413-1-git-send-email-peter.maydell@linaro.org> <515B0A79.50906@redhat.com> <515B2CE6.3040703@redhat.com> From: Peter Maydell Date: Tue, 2 Apr 2013 21:33:48 +0100 Message-ID: Content-Type: text/plain; charset=UTF-8 Subject: Re: [Qemu-devel] [PATCH 0/2] Drop support for qdev taddr properties List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Paolo Bonzini Cc: Anthony Liguori , David Gibson , qemu-devel@nongnu.org, patches@linaro.org On 2 April 2013 20:09, Paolo Bonzini wrote: > Il 02/04/2013 19:07, Peter Maydell ha scritto: >> It's not a problem with sysbus, it's a problem with people >> being lazy about implementing things that do DMA. For instance >> PCI doesn't take a MemoryRegion* for DMA, it just assumes it >> can DMA into the system address space. > > PCI does provide its own DMAContext*, which includes an AddressSpace. > This address space ("view of the world") is different for each device. Yes, but (unless you're using the legacy stuff spapr uses) it generates it via get_system_memory(), which is always wrong (though often close enough that Linux will work right). >> (it does let you pass >> a DMAContext, but maybe that goes away with the patches you >> mention above; it's only used for spapr.) > > It is extended so that it is also used for spapr with those patches. I'm confused. Do you mean that it's changed so that spapr passes a MemoryRegion* rather than a DMAContext*, or so that everything uses a DMAContext* ? (The comments in pci.c suggest that the former is the intended approach.) -- PMM