Message ID | 20170105135957.12003-1-marcandre.lureau@redhat.com |
---|---|
State | New |
Headers | show |
On 05/01/2017 14:59, Marc-André Lureau wrote: > Report the error hint when running from the command line and reaching an > error, ex: > > $ qemu-system-x86_64 -m 1Z > qemu-system-x86_64: -m 1Z: Parameter 'size' expects a size > You may use k, M, G or T suffixes for kilobytes, megabytes, gigabytes and terabytes. > > Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> > --- > monitor.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/monitor.c b/monitor.c > index a82f547488..e5cc11b5a5 100644 > --- a/monitor.c > +++ b/monitor.c > @@ -3973,6 +3973,8 @@ void error_vprintf_unless_qmp(const char *fmt, va_list ap) > { > if (cur_mon && !monitor_cur_is_qmp()) { > monitor_vprintf(cur_mon, fmt, ap); > + } else if (!cur_mon) { > + vfprintf(stderr, fmt, ap); > } > } > > Good idea! Paolo
On 01/05/2017 07:59 AM, Marc-André Lureau wrote: > Report the error hint when running from the command line and reaching an > error, ex: > > $ qemu-system-x86_64 -m 1Z > qemu-system-x86_64: -m 1Z: Parameter 'size' expects a size > You may use k, M, G or T suffixes for kilobytes, megabytes, gigabytes and terabytes. [unrelated, but this reminds me: qemu-io allows '1m' and '1M' as synonyms, but our command line parser is picky and requires the spelling '1M'. I wouldn't mind if we unified those two parsers, and make size parsing case-insensitive everywhere] > > Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> > --- > monitor.c | 2 ++ > 1 file changed, 2 insertions(+) Reviewed-by: Eric Blake <eblake@redhat.com> > > diff --git a/monitor.c b/monitor.c > index a82f547488..e5cc11b5a5 100644 > --- a/monitor.c > +++ b/monitor.c > @@ -3973,6 +3973,8 @@ void error_vprintf_unless_qmp(const char *fmt, va_list ap) > { > if (cur_mon && !monitor_cur_is_qmp()) { > monitor_vprintf(cur_mon, fmt, ap); > + } else if (!cur_mon) { > + vfprintf(stderr, fmt, ap); > } > } > >
Marc-André Lureau <marcandre.lureau@redhat.com> writes: > Report the error hint when running from the command line and reaching an Not just any hint, only the ones printed with error_printf_unless_qmp(). > error, ex: > > $ qemu-system-x86_64 -m 1Z > qemu-system-x86_64: -m 1Z: Parameter 'size' expects a size > You may use k, M, G or T suffixes for kilobytes, megabytes, gigabytes and terabytes. The last line is due to this patch. Suggest to rephrase the commit message: error: Report certain hints on stderr when no monitor Hints printed with error_printf_unless_qmp() are suppressed outside monitor context. Reproducer: $ qemu-system-x86_64 -m 1Z qemu-system-x86_64: -m 1Z: Parameter 'size' expects a size Print to stderr instead. The reproducer now additionally prints: You may use k, M, G or T suffixes for kilobytes, megabytes, gigabytes and terabytes. > > Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> > --- > monitor.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/monitor.c b/monitor.c > index a82f547488..e5cc11b5a5 100644 > --- a/monitor.c > +++ b/monitor.c > @@ -3973,6 +3973,8 @@ void error_vprintf_unless_qmp(const char *fmt, va_list ap) > { > if (cur_mon && !monitor_cur_is_qmp()) { > monitor_vprintf(cur_mon, fmt, ap); > + } else if (!cur_mon) { > + vfprintf(stderr, fmt, ap); > } > } Preferably with an improved commit message: Reviewed-by: Markus Armbruster <armbru@redhat.com>
Hi On Mon, Jan 9, 2017 at 1:23 PM Markus Armbruster <armbru@redhat.com> wrote: > Marc-André Lureau <marcandre.lureau@redhat.com> writes: > > > Report the error hint when running from the command line and reaching an > > Not just any hint, only the ones printed with error_printf_unless_qmp(). > > > error, ex: > > > > $ qemu-system-x86_64 -m 1Z > > qemu-system-x86_64: -m 1Z: Parameter 'size' expects a size > > You may use k, M, G or T suffixes for kilobytes, megabytes, gigabytes > and terabytes. > > The last line is due to this patch. > > Suggest to rephrase the commit message: > > error: Report certain hints on stderr when no monitor > > Hints printed with error_printf_unless_qmp() are suppressed outside > monitor context. Reproducer: > > $ qemu-system-x86_64 -m 1Z > qemu-system-x86_64: -m 1Z: Parameter 'size' expects a size > > Print to stderr instead. The reproducer now additionally prints: > > You may use k, M, G or T suffixes for kilobytes, megabytes, > gigabytes and terabytes. > > > > > Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> > > --- > > monitor.c | 2 ++ > > 1 file changed, 2 insertions(+) > > > > diff --git a/monitor.c b/monitor.c > > index a82f547488..e5cc11b5a5 100644 > > --- a/monitor.c > > +++ b/monitor.c > > @@ -3973,6 +3973,8 @@ void error_vprintf_unless_qmp(const char *fmt, > va_list ap) > > { > > if (cur_mon && !monitor_cur_is_qmp()) { > > monitor_vprintf(cur_mon, fmt, ap); > > + } else if (!cur_mon) { > > + vfprintf(stderr, fmt, ap); > > } > > } > > Preferably with an improved commit message: > Reviewed-by: Markus Armbruster <armbru@redhat.com> > Markus, as maintainer of monitor.c, could you take the patch with the commit message modified? thanks
Marc-André Lureau <marcandre.lureau@gmail.com> writes: > Hi > > On Mon, Jan 9, 2017 at 1:23 PM Markus Armbruster <armbru@redhat.com> wrote: > >> Marc-André Lureau <marcandre.lureau@redhat.com> writes: >> >> > Report the error hint when running from the command line and reaching an >> >> Not just any hint, only the ones printed with error_printf_unless_qmp(). >> >> > error, ex: >> > >> > $ qemu-system-x86_64 -m 1Z >> > qemu-system-x86_64: -m 1Z: Parameter 'size' expects a size >> > You may use k, M, G or T suffixes for kilobytes, megabytes, gigabytes >> and terabytes. >> >> The last line is due to this patch. >> >> Suggest to rephrase the commit message: >> >> error: Report certain hints on stderr when no monitor >> >> Hints printed with error_printf_unless_qmp() are suppressed outside >> monitor context. Reproducer: >> >> $ qemu-system-x86_64 -m 1Z >> qemu-system-x86_64: -m 1Z: Parameter 'size' expects a size >> >> Print to stderr instead. The reproducer now additionally prints: >> >> You may use k, M, G or T suffixes for kilobytes, megabytes, >> gigabytes and terabytes. >> >> > >> > Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> >> > --- >> > monitor.c | 2 ++ >> > 1 file changed, 2 insertions(+) >> > >> > diff --git a/monitor.c b/monitor.c >> > index a82f547488..e5cc11b5a5 100644 >> > --- a/monitor.c >> > +++ b/monitor.c >> > @@ -3973,6 +3973,8 @@ void error_vprintf_unless_qmp(const char *fmt, >> va_list ap) >> > { >> > if (cur_mon && !monitor_cur_is_qmp()) { >> > monitor_vprintf(cur_mon, fmt, ap); >> > + } else if (!cur_mon) { >> > + vfprintf(stderr, fmt, ap); >> > } >> > } >> >> Preferably with an improved commit message: >> Reviewed-by: Markus Armbruster <armbru@redhat.com> >> > > Markus, as maintainer of monitor.c, could you take the patch with the > commit message modified? Yes. It's in my error-next branch now.
diff --git a/monitor.c b/monitor.c index a82f547488..e5cc11b5a5 100644 --- a/monitor.c +++ b/monitor.c @@ -3973,6 +3973,8 @@ void error_vprintf_unless_qmp(const char *fmt, va_list ap) { if (cur_mon && !monitor_cur_is_qmp()) { monitor_vprintf(cur_mon, fmt, ap); + } else if (!cur_mon) { + vfprintf(stderr, fmt, ap); } }
Report the error hint when running from the command line and reaching an error, ex: $ qemu-system-x86_64 -m 1Z qemu-system-x86_64: -m 1Z: Parameter 'size' expects a size You may use k, M, G or T suffixes for kilobytes, megabytes, gigabytes and terabytes. Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com> --- monitor.c | 2 ++ 1 file changed, 2 insertions(+)