qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 07/17] pseries: savevm support for PAPR VIO logi


From: Anthony Liguori
Subject: Re: [Qemu-devel] [PATCH 07/17] pseries: savevm support for PAPR VIO logical lan
Date: Mon, 08 Jul 2013 13:36:21 -0500
User-agent: Notmuch/0.15.2+202~g0c4b8aa (http://notmuchmail.org) Emacs/23.3.1 (x86_64-pc-linux-gnu)

Alexey Kardashevskiy <address@hidden> writes:

> From: David Gibson <address@hidden>
>
> This patch adds the necessary VMStateDescription information to support
> savevm/loadvm for the spapr_llan (PAPR logical lan) device.
>
> Signed-off-by: David Gibson <address@hidden>
> Signed-off-by: Alexey Kardashevskiy <address@hidden>
> ---
>  hw/char/spapr_vty.c |   16 ++++++++++++++++

Please split this out.  But then you can add:

Reviewed-by: Anthony Liguori <address@hidden>

Regards,

Anthony Liguori

>  hw/net/spapr_llan.c |   24 ++++++++++++++++++++++--
>  2 files changed, 38 insertions(+), 2 deletions(-)
>
> diff --git a/hw/char/spapr_vty.c b/hw/char/spapr_vty.c
> index 2993848..a799721 100644
> --- a/hw/char/spapr_vty.c
> +++ b/hw/char/spapr_vty.c
> @@ -142,6 +142,21 @@ static Property spapr_vty_properties[] = {
>      DEFINE_PROP_END_OF_LIST(),
>  };
>  
> +static const VMStateDescription vmstate_spapr_vty = {
> +    .name = "spapr_vty",
> +    .version_id = 1,
> +    .minimum_version_id = 1,
> +    .minimum_version_id_old = 1,
> +    .fields      = (VMStateField []) {
> +        VMSTATE_SPAPR_VIO(sdev, VIOsPAPRVTYDevice),
> +
> +        VMSTATE_UINT32(in, VIOsPAPRVTYDevice),
> +        VMSTATE_UINT32(out, VIOsPAPRVTYDevice),
> +        VMSTATE_BUFFER(buf, VIOsPAPRVTYDevice),
> +        VMSTATE_END_OF_LIST()
> +    },
> +};
> +
>  static void spapr_vty_class_init(ObjectClass *klass, void *data)
>  {
>      DeviceClass *dc = DEVICE_CLASS(klass);
> @@ -152,6 +167,7 @@ static void spapr_vty_class_init(ObjectClass *klass, void 
> *data)
>      k->dt_type = "serial";
>      k->dt_compatible = "hvterm1";
>      dc->props = spapr_vty_properties;
> +    dc->vmsd = &vmstate_spapr_vty;
>  }
>  
>  static const TypeInfo spapr_vty_info = {
> diff --git a/hw/net/spapr_llan.c b/hw/net/spapr_llan.c
> index 03a09f2..46f7d5f 100644
> --- a/hw/net/spapr_llan.c
> +++ b/hw/net/spapr_llan.c
> @@ -81,9 +81,9 @@ typedef struct VIOsPAPRVLANDevice {
>      VIOsPAPRDevice sdev;
>      NICConf nicconf;
>      NICState *nic;
> -    int isopen;
> +    bool isopen;
>      target_ulong buf_list;
> -    int add_buf_ptr, use_buf_ptr, rx_bufs;
> +    uint32_t add_buf_ptr, use_buf_ptr, rx_bufs;
>      target_ulong rxq_ptr;
>  } VIOsPAPRVLANDevice;
>  
> @@ -500,6 +500,25 @@ static Property spapr_vlan_properties[] = {
>      DEFINE_PROP_END_OF_LIST(),
>  };
>  
> +static const VMStateDescription vmstate_spapr_llan = {
> +    .name = "spapr_llan",
> +    .version_id = 1,
> +    .minimum_version_id = 1,
> +    .minimum_version_id_old = 1,
> +    .fields      = (VMStateField []) {
> +        VMSTATE_SPAPR_VIO(sdev, VIOsPAPRVLANDevice),
> +        /* LLAN state */
> +        VMSTATE_BOOL(isopen, VIOsPAPRVLANDevice),
> +        VMSTATE_UINTTL(buf_list, VIOsPAPRVLANDevice),
> +        VMSTATE_UINT32(add_buf_ptr, VIOsPAPRVLANDevice),
> +        VMSTATE_UINT32(use_buf_ptr, VIOsPAPRVLANDevice),
> +        VMSTATE_UINT32(rx_bufs, VIOsPAPRVLANDevice),
> +        VMSTATE_UINTTL(rxq_ptr, VIOsPAPRVLANDevice),
> +
> +        VMSTATE_END_OF_LIST()
> +    },
> +};
> +
>  static void spapr_vlan_class_init(ObjectClass *klass, void *data)
>  {
>      DeviceClass *dc = DEVICE_CLASS(klass);
> @@ -514,6 +533,7 @@ static void spapr_vlan_class_init(ObjectClass *klass, 
> void *data)
>      k->signal_mask = 0x1;
>      dc->props = spapr_vlan_properties;
>      k->rtce_window_size = 0x10000000;
> +    dc->vmsd = &vmstate_spapr_llan;
>  }
>  
>  static const TypeInfo spapr_vlan_info = {
> -- 
> 1.7.10.4




reply via email to

[Prev in Thread] Current Thread [Next in Thread]