On Thu, Jun 05, 2014 at 01:23:53PM +0200, Paolo Bonzini wrote: > Both Marcelo's rtc patches and Peter's MemoryRegion patches showed > the interest in having link properties with a custom representation > and/or a different way to store the property. > > Such properties would still be link<>s for the outside world, but > the internal implementation in QEMU would be different. > > This series proposes a way to introduce such custom link properties, > using a new property callback "resolve" that generalizes the if/else > ladder in object_resolve_path_component. > > The second patch shows how the mechanism could be used to add a simple > immutable "alias" link. Example: > > $ ./qom-list -s /tmp/m1 /machine > @rtc/ # this is an alias > i440fx/ > fw_cfg/ > icc-bridge/ > unattached/ > peripheral/ > peripheral-anon/ > ... > > $ ./qom-get -s /tmp/m1 /machine.rtc > /machine/unattached/device[8] # later could become /machine/piix3/rtc > # or /machine/ich9/rtc and so on > > $ ./qom-get -s /tmp/m1 /machine/rtc.date > tm_sec: 58 > tm_hour: 11 > tm_mday: 5 > tm_year: 114 > tm_mon: 5 > tm_min: 16 > > Paolo > > Paolo Bonzini (2): > qom: add a generic mechanism to resolve paths > qom: add object_property_add_alias > > include/qom/object.h | 74 > ++++++++++++++++++++++++++++++++++++++++++++++++++++ > qom/object.c | 68 +++++++++++++++++++++++++++++++++-------------- > 2 files changed, 123 insertions(+), 19 deletions(-) > > -- > 1.8.3.1
Thats nicer, thanks. Reviewed-by: Marcelo Tosatti <mtosa...@redhat.com>