On Wed, Mar 08, 2017 at 10:17:09AM +0200, Marcel Apfelbaum wrote: [...]
> > I am sorry I was not clear enough: > If a device is added after the system is up (hotplug), we cannot depend on > the "machine_done" > event to enable "bus master". > This is why we have > if (qdev_hotplug) > pci_init_bus_master(pci_dev); > > The code you proposed changes the order, so this call is done *after* realize. > > My question was: What if any other device may require the bus_master_as > at realize time (and can be hot-plugged) ? > For example: hcd-ehci/hcd-ohci devices call pci_get_address_space() > and caches the bus_master_as. Oh, I didn't notice that there are other devices that used bus_master_as during realization. If so... Would this really work even without hot plug? Considering that bus_master_as won't be inited until machine done phase? -- peterx