From: Paolo Bonzini <pbonzini@redhat.com>
To: David Gibson <david@gibson.dropbear.id.au>
Cc: aik@ozlabs.ru, alex.williamson@redhat.com, qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 2/5] pci: Don't create an address space object for every PCI device
Date: Wed, 24 Apr 2013 14:34:21 +0200 [thread overview]
Message-ID: <5177D14D.5000609@redhat.com> (raw)
In-Reply-To: <1366804881-553-3-git-send-email-david@gibson.dropbear.id.au>
Il 24/04/2013 14:01, David Gibson ha scritto:
> So while its true that the DMAContext handling needs to be better
> integrated with the MemoryRegion and AddressSpace handling, that commit
> wasn't actually a step in the right direction for it. Since then, the
> DMAContext has been extended so it can backend onto an AddressSpace, and
> thereby, a MemoryRegion. Effectively a DMAContext is now an AddressSpace
> with iommu translation handling on top.
>
> Therefore, this patch essentially reverts the earlier commit, making all
> PCI devices by default shared the global dma_context_memory which backs
> onto main system memory. Those cases which need to set up different DMA
> address spaces for each PCI device should supply a suitable dma_context_fn
> in the bus to correctly assign / create suitable DMAContext structures.
I think this will be handled correctly when I submit IOMMU AddressSpace
patches (next week or so). The structure will be
PCI device 1 PCI device 2
---------------------------------------------------------------
AddressSpace 1 AddressSpace 2
| |
| (enable/disable) | (enable/disable)
'-------------------. .----------------'
v v
IOMMU AddressSpace
|
| (translation)
v
system memory
VFIO will be able to access the IOMMU AddressSpace simply via
pci_dev->iommu, and that field will be ==-identical for different PCI
devices.
Paolo
next prev parent reply other threads:[~2013-04-24 12:34 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-04-24 12:01 [Qemu-devel] [0/5] RFC: Preparations for supporting VFIO with guest IOMMUs David Gibson
2013-04-24 12:01 ` [Qemu-devel] [PATCH 1/5] pci: Simpler implementation of PCI_COMMAND_MASTER bit David Gibson
2013-04-24 12:36 ` Paolo Bonzini
2013-04-24 13:06 ` David Gibson
2013-04-24 12:01 ` [Qemu-devel] [PATCH 2/5] pci: Don't create an address space object for every PCI device David Gibson
2013-04-24 12:34 ` Paolo Bonzini [this message]
2013-04-24 13:07 ` David Gibson
2013-04-24 12:01 ` [Qemu-devel] [PATCH 3/5] vfio: Associate VFIO groups with DMAContexts David Gibson
2013-04-24 12:01 ` [Qemu-devel] [PATCH 4/5] vfio: Move container list to DMAContext David Gibson
2013-04-24 15:12 ` Alex Williamson
2013-04-24 16:33 ` Paolo Bonzini
2013-04-25 6:36 ` David Gibson
2013-04-26 8:44 ` Paolo Bonzini
2013-04-26 8:46 ` Alexey Kardashevskiy
2013-04-26 8:52 ` Paolo Bonzini
2013-04-26 8:56 ` Alexey Kardashevskiy
2013-04-26 9:08 ` Paolo Bonzini
2013-04-25 6:35 ` David Gibson
2013-04-24 12:01 ` [Qemu-devel] [PATCH 5/5] vfio: Only use memory listeners when appropriate David Gibson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5177D14D.5000609@redhat.com \
--to=pbonzini@redhat.com \
--cc=aik@ozlabs.ru \
--cc=alex.williamson@redhat.com \
--cc=david@gibson.dropbear.id.au \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).