Message ID | 1471498092-27135-2-git-send-email-peterx@redhat.com |
---|---|
State | New |
Headers | show |
On Thu, 08/18 13:28, Peter Xu wrote: > There are many places in current QEMU codes that needs to print some > error and then quit QEMU. Provide a new function for it. > > Signed-off-by: Peter Xu <peterx@redhat.com> > --- > include/qemu/error-report.h | 1 + > util/qemu-error.c | 12 ++++++++++++ > 2 files changed, 13 insertions(+) > > diff --git a/include/qemu/error-report.h b/include/qemu/error-report.h > index 499ec8b..eb8260e 100644 > --- a/include/qemu/error-report.h > +++ b/include/qemu/error-report.h > @@ -36,6 +36,7 @@ void error_printf_unless_qmp(const char *fmt, ...) GCC_FMT_ATTR(1, 2); > void error_set_progname(const char *argv0); > void error_vreport(const char *fmt, va_list ap) GCC_FMT_ATTR(1, 0); > void error_report(const char *fmt, ...) GCC_FMT_ATTR(1, 2); > +void error_report_fatal(const char *fmt, ...) GCC_FMT_ATTR(1, 2); > const char *error_get_progname(void); > extern bool enable_timestamp_msg; > > diff --git a/util/qemu-error.c b/util/qemu-error.c > index 1ef3566..81379e1 100644 > --- a/util/qemu-error.c > +++ b/util/qemu-error.c > @@ -10,6 +10,7 @@ > * See the COPYING file in the top-level directory. > */ > > +#include <unistd.h> I think qemu/osdep.h must come first. But OTOH this include is not necessary. > #include "qemu/osdep.h" > #include "monitor/monitor.h" > #include "qemu/error-report.h" > @@ -237,3 +238,14 @@ void error_report(const char *fmt, ...) > error_vreport(fmt, ap); > va_end(ap); > } > + > +void error_report_fatal(const char *fmt, ...) > +{ > + va_list ap; > + > + va_start(ap, fmt); > + error_vreport(fmt, ap); > + va_end(ap); > + > + exit(1); > +} > -- > 2.7.4 >
diff --git a/include/qemu/error-report.h b/include/qemu/error-report.h index 499ec8b..eb8260e 100644 --- a/include/qemu/error-report.h +++ b/include/qemu/error-report.h @@ -36,6 +36,7 @@ void error_printf_unless_qmp(const char *fmt, ...) GCC_FMT_ATTR(1, 2); void error_set_progname(const char *argv0); void error_vreport(const char *fmt, va_list ap) GCC_FMT_ATTR(1, 0); void error_report(const char *fmt, ...) GCC_FMT_ATTR(1, 2); +void error_report_fatal(const char *fmt, ...) GCC_FMT_ATTR(1, 2); const char *error_get_progname(void); extern bool enable_timestamp_msg; diff --git a/util/qemu-error.c b/util/qemu-error.c index 1ef3566..81379e1 100644 --- a/util/qemu-error.c +++ b/util/qemu-error.c @@ -10,6 +10,7 @@ * See the COPYING file in the top-level directory. */ +#include <unistd.h> #include "qemu/osdep.h" #include "monitor/monitor.h" #include "qemu/error-report.h" @@ -237,3 +238,14 @@ void error_report(const char *fmt, ...) error_vreport(fmt, ap); va_end(ap); } + +void error_report_fatal(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + error_vreport(fmt, ap); + va_end(ap); + + exit(1); +}
There are many places in current QEMU codes that needs to print some error and then quit QEMU. Provide a new function for it. Signed-off-by: Peter Xu <peterx@redhat.com> --- include/qemu/error-report.h | 1 + util/qemu-error.c | 12 ++++++++++++ 2 files changed, 13 insertions(+)