All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] kvm tools: Add debug() helper
@ 2011-05-11 16:10 Cyrill Gorcunov
  0 siblings, 0 replies; only message in thread
From: Cyrill Gorcunov @ 2011-05-11 16:10 UTC (permalink / raw)
  To: Pekka Enberg; +Cc: Ingo Molnar, Asias He, Sasha Levin, Prasad Joshi, kvm-vger

Useful for debugging. It adds "--debug" option as well so
debug prints are seen only if user asked for them.

Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
---

No real users in code yet, the patches with debug()
are in stage, posted out to not loose it.

Thanks.

 tools/kvm/Documentation/kvm-run.txt |    3 +++
 tools/kvm/include/kvm/util.h        |   10 ++++++++++
 tools/kvm/kvm-run.c                 |    4 ++++
 3 files changed, 17 insertions(+)

Index: linux-2.6.git/tools/kvm/Documentation/kvm-run.txt
=====================================================================
--- linux-2.6.git.orig/tools/kvm/Documentation/kvm-run.txt
+++ linux-2.6.git/tools/kvm/Documentation/kvm-run.txt
@@ -55,6 +55,9 @@ OPTIONS
 --cpus::
 	The number of virtual CPUs to run.

+--debug::
+	Enable debug messages.
+
 SEE ALSO
 --------
 linkkvm:
Index: linux-2.6.git/tools/kvm/include/kvm/util.h
=====================================================================
--- linux-2.6.git.orig/tools/kvm/include/kvm/util.h
+++ linux-2.6.git/tools/kvm/include/kvm/util.h
@@ -15,6 +15,7 @@
 #include <stdlib.h>
 #include <stdarg.h>
 #include <string.h>
+#include <stdbool.h>
 #include <errno.h>
 #include <limits.h>
 #include <sys/param.h>
@@ -29,6 +30,8 @@
 #endif
 #endif

+extern bool do_debug_print;
+
 extern void die(const char *err, ...) NORETURN __attribute__((format (printf, 1, 2)));
 extern void die_perror(const char *s) NORETURN;
 extern int error(const char *err, ...) __attribute__((format (printf, 1, 2)));
@@ -36,6 +39,13 @@ extern void warning(const char *err, ...
 extern void info(const char *err, ...) __attribute__((format (printf, 1, 2)));
 extern void set_die_routine(void (*routine)(const char *err, va_list params) NORETURN);

+#define debug(fmt, ...)							\
+	do {								\
+		if (do_debug_print)					\
+			info("(%s) %s:%d: " fmt, __FILE__,		\
+				__func__, __LINE__, ##__VA_ARGS__);	\
+	} while (0)
+
 #define BUILD_BUG_ON(condition) ((void)sizeof(char[1 - 2*!!(condition)]))

 #define DIE_IF(cnd)						\
Index: linux-2.6.git/tools/kvm/kvm-run.c
=====================================================================
--- linux-2.6.git.orig/tools/kvm/kvm-run.c
+++ linux-2.6.git/tools/kvm/kvm-run.c
@@ -66,6 +66,8 @@ static bool virtio_rng;
 extern bool ioport_debug;
 extern int  active_console;

+bool do_debug_print = false;
+
 static int nrcpus = 1;

 static const char * const run_usage[] = {
@@ -126,6 +128,8 @@ static const struct option options[] = {
 			"Enable single stepping"),
 	OPT_BOOLEAN('g', "ioport-debug", &ioport_debug,
 			"Enable ioport debugging"),
+	OPT_BOOLEAN('\0', "debug", &do_debug_print,
+			"Enable debug messages"),
 	OPT_END()
 };


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2011-05-11 16:10 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-11 16:10 [PATCH] kvm tools: Add debug() helper Cyrill Gorcunov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.