On Mon, Oct 25, 2010 at 04:02:36PM +0900, Isaku Yamahata wrote: > > > > What I am also saying is that the same command should be able > > > > to work for pci and express I think. > > > > > > I see. Then, I think that the slot numbering needs to be discussed. > > > > Yes. > > > > > More concretely, it's what type of argument is passed for push attention > > > button command. > > > Here the slot number in general means that the number that is printed near > > > the physical slot. Not pci (segment, bus, device) triplets. > > > > > > The current qemu pci hot plug abuses the triplets as the slot number > > > with the assumption of (segment = 0, bus = 0, device = slot number). > > > On the other hand, pcie hot plug has its own scheme to number the slots. > > > The correspondence between the triplets and the slot is provided > > > to the OS. (The standard pci hot plug has its own too which is different > > > from the pcie one.) > > > So users may want to operate with the slot number. > > > User's opinions are needed. Any comments? > > > > > > thanks, > > > > Can we just use the topological address everywhere? > > Bus numbers are guest assigned, so we can not always > > rely on them. They are nice for human monitor > > though and should be way to get from them to > > topology and back. > > And for bus 0 they are equivalent. > > Yes, with some kind of conversion. > We could go with whichever addressing with (slight?) effort > to implement conversion. > The point is what users(libvirt? virt-manager?) want.
When pushing the attention button, we are talking to the hot plug controller, not the device in the slot. The button can be pushed even when the slot is empty. In qemu pci hot plug case the button is used only for device ejection, so (segment, bus, device) triplet (or any address to specify the device in the slot) works. But such address doesn't work for pcie case. (nor for standard pci hot plug case) Address that will be used should be able to specify the slot itself without the device. -- yamahata