Re: RFC qdev path semantics

Paul Brook
2010-06-17T22:01:32Z

> > ### Paul proposes to require all buses to define bus addresses. Make
> > one up if necessary.
>
> That seems arbitrary and prone to breakage. How do we handle a subtle
> change in device instantiation order and still allow migration? If by
> code change or command line ordering my frobnitz moves from:
>
> /i440FX-pcihost/pci.0/PIIX3/@01.0/isa.0/0
>
> to
>
> /i440FX-pcihost/pci.0/PIIX3/@01.0/isa.0/1

Two things are apparent here.
(a) You've clearly misunderstood the proposals. The paths above make no sense.

(b) You've picked a particularly poor definition of device address for the ISA
bus. We can do much better than device creation order.

> ...
> I can live with PATH/@BUS-ADDR if it's still felt that
> PATH/IDENT@BUS-ADDR isn't canonical. What that means is that I'll
> probably code up vmstate and ramblocks to append IDENT themselves to
> keep all the goodness of having per PATH/IDENT namespaces.

As discussed elsewhere in this thread, addition of IDENT to the device path is
neither necessary nor sufficient for migration.

I really feel like we're going round in circles here.

Paul