qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] virtio: Tell the user what went wrong when event_notifier_init failed
@ 2016-06-27 22:12 Thomas Huth
  2016-06-27 22:38 ` Eric Blake
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Thomas Huth @ 2016-06-27 22:12 UTC (permalink / raw)
  To: Michael S. Tsirkin, qemu-devel; +Cc: Cornelia Huck, armbru

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 <thuth@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);
             return r;
         }
         virtio_queue_set_host_notifier_fd_handler(vq, true, set_handler);
-- 
1.8.3.1

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH] virtio: Tell the user what went wrong when event_notifier_init failed
  2016-06-27 22:12 [Qemu-devel] [PATCH] virtio: Tell the user what went wrong when event_notifier_init failed Thomas Huth
@ 2016-06-27 22:38 ` Eric Blake
  2016-06-28  7:44 ` Cornelia Huck
  2016-07-14 12:41 ` Thomas Huth
  2 siblings, 0 replies; 5+ messages in thread
From: Eric Blake @ 2016-06-27 22:38 UTC (permalink / raw)
  To: Thomas Huth, Michael S. Tsirkin, qemu-devel; +Cc: Cornelia Huck, armbru

[-- Attachment #1: Type: text/plain, Size: 1523 bytes --]

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 <thuth@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 <eblake@redhat.com>

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


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 604 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH] virtio: Tell the user what went wrong when event_notifier_init failed
  2016-06-27 22:12 [Qemu-devel] [PATCH] virtio: Tell the user what went wrong when event_notifier_init failed Thomas Huth
  2016-06-27 22:38 ` Eric Blake
@ 2016-06-28  7:44 ` Cornelia Huck
  2016-07-14 12:41 ` Thomas Huth
  2 siblings, 0 replies; 5+ messages in thread
From: Cornelia Huck @ 2016-06-28  7:44 UTC (permalink / raw)
  To: Thomas Huth; +Cc: Michael S. Tsirkin, qemu-devel, armbru

On Tue, 28 Jun 2016 00:12:03 +0200
Thomas Huth <thuth@redhat.com> 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 <thuth@redhat.com>
> ---
>  hw/virtio/virtio-bus.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Reviewed-by: Cornelia Huck <cornelia.huck@de.ibm.com>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH] virtio: Tell the user what went wrong when event_notifier_init failed
  2016-06-27 22:12 [Qemu-devel] [PATCH] virtio: Tell the user what went wrong when event_notifier_init failed Thomas Huth
  2016-06-27 22:38 ` Eric Blake
  2016-06-28  7:44 ` Cornelia Huck
@ 2016-07-14 12:41 ` Thomas Huth
  2016-09-02 22:09   ` Thomas Huth
  2 siblings, 1 reply; 5+ messages in thread
From: Thomas Huth @ 2016-07-14 12:41 UTC (permalink / raw)
  To: Michael S. Tsirkin, qemu-devel

On 28.06.2016 00:12, 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 <thuth@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);
>              return r;
>          }
>          virtio_queue_set_host_notifier_fd_handler(vq, true, set_handler);
> 

ping?

 Thomas

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [Qemu-devel] [PATCH] virtio: Tell the user what went wrong when event_notifier_init failed
  2016-07-14 12:41 ` Thomas Huth
@ 2016-09-02 22:09   ` Thomas Huth
  0 siblings, 0 replies; 5+ messages in thread
From: Thomas Huth @ 2016-09-02 22:09 UTC (permalink / raw)
  To: Michael S. Tsirkin, qemu-devel

On 14.07.2016 14:41, Thomas Huth wrote:
> On 28.06.2016 00:12, 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 <thuth@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);
>>              return r;
>>          }
>>          virtio_queue_set_host_notifier_fd_handler(vq, true, set_handler);
>>
> 
> ping?

ping^2

 Thomas

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2016-09-02 22:09 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-06-27 22:12 [Qemu-devel] [PATCH] virtio: Tell the user what went wrong when event_notifier_init failed Thomas Huth
2016-06-27 22:38 ` Eric Blake
2016-06-28  7:44 ` Cornelia Huck
2016-07-14 12:41 ` Thomas Huth
2016-09-02 22:09   ` Thomas Huth

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).