Message ID | 1467065523-13881-1-git-send-email-thuth@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
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>
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>
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
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
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);
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(-)