public inbox for kvm@vger.kernel.org
 help / color / mirror / Atom feed
* [kvm-unit-tests PATCH] report: introduce report_info
@ 2016-11-18 13:35 Andrew Jones
  2016-11-18 14:20 ` Thomas Huth
  0 siblings, 1 reply; 4+ messages in thread
From: Andrew Jones @ 2016-11-18 13:35 UTC (permalink / raw)
  To: kvm; +Cc: rkrcmar, pbonzini, lvivier, thuth, andre.przywara

Test writers sometimes want to output informational messages, but
they don't want to use printf because they want the prefixes as
well. Rather than creating "fake" tests that always pass, with
report(fmt, true, ...), provide report_info(fmt, ...). This
generates 'INFO: prefixes...: message'

While touching report code also add the lock to report_abort to
ensure its output line integrity.

Signed-off-by: Andrew Jones <drjones@redhat.com>
---
 lib/libcflat.h |  1 +
 lib/report.c   | 16 ++++++++++++++++
 2 files changed, 17 insertions(+)

diff --git a/lib/libcflat.h b/lib/libcflat.h
index 72b1bf9668ef..c622198677c1 100644
--- a/lib/libcflat.h
+++ b/lib/libcflat.h
@@ -82,6 +82,7 @@ extern void report(const char *msg_fmt, bool pass, ...);
 extern void report_xfail(const char *msg_fmt, bool xfail, bool pass, ...);
 extern void report_abort(const char *msg_fmt, ...);
 extern void report_skip(const char *msg_fmt, ...);
+extern void report_info(const char *msg_fmt, ...);
 extern int report_summary(void);
 
 extern void dump_stack(void);
diff --git a/lib/report.c b/lib/report.c
index 4cd75534f978..fc0ef494f412 100644
--- a/lib/report.c
+++ b/lib/report.c
@@ -91,6 +91,20 @@ void report_skip(const char *msg_fmt, ...)
 	va_end(va);
 }
 
+void report_info(const char *msg_fmt, ...)
+{
+	va_list va;
+
+	spin_lock(&lock);
+	puts("INFO: ");
+	puts(prefixes);
+	va_start(va, msg_fmt);
+	vprintf(msg_fmt, va);
+	va_end(va);
+	puts("\n");
+	spin_unlock(&lock);
+}
+
 int report_summary(void)
 {
 	spin_lock(&lock);
@@ -118,12 +132,14 @@ void report_abort(const char *msg_fmt, ...)
 {
 	va_list va;
 
+	spin_lock(&lock);
 	puts("ABORT: ");
 	puts(prefixes);
 	va_start(va, msg_fmt);
 	vprintf(msg_fmt, va);
 	va_end(va);
 	puts("\n");
+	spin_unlock(&lock);
 	report_summary();
 	abort();
 }
-- 
2.7.4


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

end of thread, other threads:[~2016-11-22 13:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-18 13:35 [kvm-unit-tests PATCH] report: introduce report_info Andrew Jones
2016-11-18 14:20 ` Thomas Huth
2016-11-18 14:26   ` Andrew Jones
2016-11-22 13:32     ` Radim Krčmář

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox