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>


Reply via email to