qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH v1][RFC] pci: Set PCI-bus device entry before initializing bus master
@ 2017-10-05 12:36 Pierre Morel
  2017-10-05 12:36 ` [Qemu-devel] [PATCH v1] " Pierre Morel
  0 siblings, 1 reply; 3+ messages in thread
From: Pierre Morel @ 2017-10-05 12:36 UTC (permalink / raw)
  To: qemu-devel; +Cc: mst, marcel, cohuck, zyimin

When initializing the PCI-bus master pci_init_bus_master(PCIDevice *)
calls pci_device_iommu_address_space(PCIDevice *) which in turn calls
iommu_bus->iommu_fn(bus, opaque,devfn)

If the device entry of the PCI-bus is not initialized to point to the
PCIDevice structure, the iommu_fn() function, getting only bus and
devno, is unable to retrieve the PCIDevice.

Usually it is not a problem as the DMA address space is depending of
the BUS but in an architecture like S390x, each PCI Device can have
its own DMA address space.
Being able to setup the DMA address space at the right moment will
greatly simplify the hotplug implementation for these architectures.

This patch proposes to setup the bus device entry before calling
pci_init_bus_master() and reset the entry in case of error.


Pierre Morel (1):
  pci: Set PCI-bus device entry before initializing bus master

 hw/pci/pci.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

-- 
2.7.4

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2017-10-09  8:42 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-10-05 12:36 [Qemu-devel] [PATCH v1][RFC] pci: Set PCI-bus device entry before initializing bus master Pierre Morel
2017-10-05 12:36 ` [Qemu-devel] [PATCH v1] " Pierre Morel
2017-10-09  8:42   ` Yi Min Zhao

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).