On 06/27/2016 04:12 PM, Thomas Huth wrote:
> event_notifier_init() can fail in real life, for example when there
> are not enough open file handles available (EMFILE) when using a lot
> of devices. So instead of leaving the average user with a cryptic
> error number only, print out a proper error message with strerror()
> instead, so that the user has a better way to figure out what is
> going on and that using "ulimit -n" might help here for example.
> 
> Signed-off-by: Thomas Huth <th...@redhat.com>
> ---
>  hw/virtio/virtio-bus.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/virtio/virtio-bus.c b/hw/virtio/virtio-bus.c
> index 1313760..08e38fb 100644
> --- a/hw/virtio/virtio-bus.c
> +++ b/hw/virtio/virtio-bus.c
> @@ -164,7 +164,8 @@ static int set_host_notifier_internal(DeviceState *proxy, 
> VirtioBusState *bus,
>      if (assign) {
>          r = event_notifier_init(notifier, 1);
>          if (r < 0) {
> -            error_report("%s: unable to init event notifier: %d", __func__, 
> r);
> +            error_report("%s: unable to init event notifier: %s (%d)",
> +                         __func__, strerror(-r), r);

Yet another case where we have error_report(...strerror()), which argues
that someday we should add error_report_errno() to match
error_setg_errno().  But not your fault.

Reviewed-by: Eric Blake <ebl...@redhat.com>

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to