Il 18/09/2014 11:32, arei.gong...@huawei.com ha scritto:
> From: Gonglei <arei.gong...@huawei.com>
> 
> In this way, all the implementations now use
> error_setg instead of error_report for reporting error.
> 
> Signed-off-by: Gonglei <arei.gong...@huawei.com>
> ---
>  hw/usb/dev-hub.c | 9 ++++-----
>  1 file changed, 4 insertions(+), 5 deletions(-)
> 
> diff --git a/hw/usb/dev-hub.c b/hw/usb/dev-hub.c
> index 7492174..8e3f7a8 100644
> --- a/hw/usb/dev-hub.c
> +++ b/hw/usb/dev-hub.c
> @@ -511,15 +511,15 @@ static USBPortOps usb_hub_port_ops = {
>      .complete = usb_hub_complete,
>  };
>  
> -static int usb_hub_initfn(USBDevice *dev)
> +static void usb_hub_realize(USBDevice *dev, Error **errp)
>  {
>      USBHubState *s = DO_UPCAST(USBHubState, dev, dev);
>      USBHubPort *port;
>      int i;
>  
>      if (dev->port->hubcount == 5) {
> -        error_report("usb hub chain too deep");
> -        return -1;
> +        error_setg(errp, "usb hub chain too deep");
> +        return;
>      }
>  
>      usb_desc_create_serial(dev);
> @@ -533,7 +533,6 @@ static int usb_hub_initfn(USBDevice *dev)
>          usb_port_location(&port->port, dev->port, i+1);
>      }
>      usb_hub_handle_reset(dev);
> -    return 0;
>  }
>  
>  static const VMStateDescription vmstate_usb_hub_port = {
> @@ -564,7 +563,7 @@ static void usb_hub_class_initfn(ObjectClass *klass, void 
> *data)
>      DeviceClass *dc = DEVICE_CLASS(klass);
>      USBDeviceClass *uc = USB_DEVICE_CLASS(klass);
>  
> -    uc->init           = usb_hub_initfn;
> +    uc->realize           = usb_hub_realize;
>      uc->product_desc   = "QEMU USB Hub";
>      uc->usb_desc       = &desc_hub;
>      uc->find_device    = usb_hub_find_device;
> 

Reviewed-by: Paolo Bonzini <pbonz...@redhat.com>

Reply via email to