----- Original Message -----
> The device's guest interface and its QEMU user interface are
> flawed^Whotly debated.  We'll resolve that in the next development
> cycle, probably by deprecating the device in favour of a cleaned up,
> but not quite compatible revision.
> 
> To avoid adding more baggage to the soon-to-be-deprecated interface,
> mark property "memdev" as experimental, by renaming it to "x-memdev".
> It's the only recent user interface change.

Sounds good to me,

Reviewed-by: Marc-André Lureau <[email protected]>

> 
> Signed-off-by: Markus Armbruster <[email protected]>
> ---
>  hw/misc/ivshmem.c    | 8 +++-----
>  tests/ivshmem-test.c | 2 +-
>  2 files changed, 4 insertions(+), 6 deletions(-)
> 
> diff --git a/hw/misc/ivshmem.c b/hw/misc/ivshmem.c
> index a6bfdde..e24f9ee 100644
> --- a/hw/misc/ivshmem.c
> +++ b/hw/misc/ivshmem.c
> @@ -60,8 +60,6 @@
>  #define IVSHMEM(obj) \
>      OBJECT_CHECK(IVShmemState, (obj), TYPE_IVSHMEM)
>  
> -#define IVSHMEM_MEMDEV_PROP "memdev"
> -

I agree the define is unneeded, I probably adapted the code from pc-dimm which 
declare it in public header (not sure why btw)

>  typedef struct Peer {
>      int nb_eventfds;
>      EventNotifier *eventfds;
> @@ -857,8 +855,8 @@ static void pci_ivshmem_realize(PCIDevice *dev, Error
> **errp)
>          PCI_BASE_ADDRESS_MEM_PREFETCH;
>  
>      if (!!s->server_chr + !!s->shmobj + !!s->hostmem != 1) {
> -        error_setg(errp, "You must specify either a shmobj, a chardev"
> -                   " or a hostmem");
> +        error_setg(errp,
> +                   "You must specify either 'shm', 'chardev' or
> 'x-memdev'");

nice improvement

>          return;
>      }
>  
> @@ -1182,7 +1180,7 @@ static void ivshmem_init(Object *obj)
>  {
>      IVShmemState *s = IVSHMEM(obj);
>  
> -    object_property_add_link(obj, IVSHMEM_MEMDEV_PROP, TYPE_MEMORY_BACKEND,
> +    object_property_add_link(obj, "x-memdev", TYPE_MEMORY_BACKEND,
>                               (Object **)&s->hostmem,
>                               ivshmem_check_memdev_is_busy,
>                               OBJ_PROP_LINK_UNREF_ON_RELEASE,
> diff --git a/tests/ivshmem-test.c b/tests/ivshmem-test.c
> index 8f1a849..03c7b96 100644
> --- a/tests/ivshmem-test.c
> +++ b/tests/ivshmem-test.c
> @@ -393,7 +393,7 @@ static void test_ivshmem_memdev(void)
>  
>      /* just for the sake of checking memory-backend property */
>      setup_vm_cmd(&state, "-object memory-backend-ram,size=1M,id=mb1"
> -                 " -device ivshmem,memdev=mb1", false);
> +                 " -device ivshmem,x-memdev=mb1", false);
>  
>      qtest_quit(state.qtest);
>  }
> --
> 2.4.3
> 
> 

Reply via email to