diff mbox series

[RESEND,kvmtool,3/4] util: Use __pr_debug() instead of pr_info() to print debug messages

Message ID 20230630133134.65284-4-alexandru.elisei@arm.com (mailing list archive)
State New, archived
Headers show
Series Add --loglevel argument | expand

Commit Message

Alexandru Elisei June 30, 2023, 1:31 p.m. UTC
pr_debug() is special, because it can be suppressed with a command line
argument, and because it needs to be a macro to capture the correct
filename, function name and line number. Display debug messages with the
prefix "Debug", to make it clear that those aren't informational messages.

Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>
---
 include/kvm/util.h |  3 ++-
 util/util.c        | 15 +++++++++++++++
 2 files changed, 17 insertions(+), 1 deletion(-)

Comments

Jean-Philippe Brucker July 4, 2023, 9:50 a.m. UTC | #1
On Fri, Jun 30, 2023 at 02:31:33PM +0100, Alexandru Elisei wrote:
> pr_debug() is special, because it can be suppressed with a command line
> argument, and because it needs to be a macro to capture the correct
> filename, function name and line number. Display debug messages with the
> prefix "Debug", to make it clear that those aren't informational messages.
> 
> Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>

Reviewed-by: Jean-Philippe Brucker <jean-philippe@linaro.org>

(nit below)

> ---
>  include/kvm/util.h |  3 ++-
>  util/util.c        | 15 +++++++++++++++
>  2 files changed, 17 insertions(+), 1 deletion(-)
> 
> diff --git a/include/kvm/util.h b/include/kvm/util.h
> index f51f370d2b37..6920ce2630ad 100644
> --- a/include/kvm/util.h
> +++ b/include/kvm/util.h
> @@ -42,12 +42,13 @@ extern void die_perror(const char *s) NORETURN;
>  extern void pr_err(const char *err, ...) __attribute__((format (printf, 1, 2)));
>  extern void pr_warning(const char *err, ...) __attribute__((format (printf, 1, 2)));
>  extern void pr_info(const char *err, ...) __attribute__((format (printf, 1, 2)));
> +extern void __pr_debug(const char *err, ...) __attribute__((format (printf, 1, 2)));
>  extern void set_die_routine(void (*routine)(const char *err, va_list params) NORETURN);
>  
>  #define pr_debug(fmt, ...)						\
>  	do {								\
>  		if (do_debug_print)					\
> -			pr_info("(%s) %s:%d: " fmt, __FILE__,		\
> +			__pr_debug("(%s) %s:%d: " fmt, __FILE__,	\
>  				__func__, __LINE__, ##__VA_ARGS__);	\
>  	} while (0)
>  
> diff --git a/util/util.c b/util/util.c
> index f59f26e1581c..e3b36f67f899 100644
> --- a/util/util.c
> +++ b/util/util.c
> @@ -38,6 +38,11 @@ static void info_builtin(const char *info, va_list params)
>  	report(" Info: ", info, params);
>  }
>  
> +static void debug_builtin(const char *info, va_list params)

parameter here and in __pr_debug could be called 'debug' for consistency

> +{
> +	report(" Debug: ", info, params);
> +}
> +
>  void die(const char *err, ...)
>  {
>  	va_list params;
> @@ -74,6 +79,16 @@ void pr_info(const char *info, ...)
>  	va_end(params);
>  }
>  
> +/* Do not call directly; call pr_debug() instead. */
> +void __pr_debug(const char *info, ...)
> +{
> +	va_list params;
> +
> +	va_start(params, info);
> +	debug_builtin(info, params);
> +	va_end(params);
> +}
> +
>  void die_perror(const char *s)
>  {
>  	perror(s);
> -- 
> 2.41.0
>
Alexandru Elisei July 7, 2023, 1:35 p.m. UTC | #2
Hi,

On Tue, Jul 04, 2023 at 10:50:04AM +0100, Jean-Philippe Brucker wrote:
> On Fri, Jun 30, 2023 at 02:31:33PM +0100, Alexandru Elisei wrote:
> > pr_debug() is special, because it can be suppressed with a command line
> > argument, and because it needs to be a macro to capture the correct
> > filename, function name and line number. Display debug messages with the
> > prefix "Debug", to make it clear that those aren't informational messages.
> > 
> > Signed-off-by: Alexandru Elisei <alexandru.elisei@arm.com>
> 
> Reviewed-by: Jean-Philippe Brucker <jean-philippe@linaro.org>

Thanks, changed the parameter to be called debug.

Alex

> 
> (nit below)
> 
> > ---
> >  include/kvm/util.h |  3 ++-
> >  util/util.c        | 15 +++++++++++++++
> >  2 files changed, 17 insertions(+), 1 deletion(-)
> > 
> > diff --git a/include/kvm/util.h b/include/kvm/util.h
> > index f51f370d2b37..6920ce2630ad 100644
> > --- a/include/kvm/util.h
> > +++ b/include/kvm/util.h
> > @@ -42,12 +42,13 @@ extern void die_perror(const char *s) NORETURN;
> >  extern void pr_err(const char *err, ...) __attribute__((format (printf, 1, 2)));
> >  extern void pr_warning(const char *err, ...) __attribute__((format (printf, 1, 2)));
> >  extern void pr_info(const char *err, ...) __attribute__((format (printf, 1, 2)));
> > +extern void __pr_debug(const char *err, ...) __attribute__((format (printf, 1, 2)));
> >  extern void set_die_routine(void (*routine)(const char *err, va_list params) NORETURN);
> >  
> >  #define pr_debug(fmt, ...)						\
> >  	do {								\
> >  		if (do_debug_print)					\
> > -			pr_info("(%s) %s:%d: " fmt, __FILE__,		\
> > +			__pr_debug("(%s) %s:%d: " fmt, __FILE__,	\
> >  				__func__, __LINE__, ##__VA_ARGS__);	\
> >  	} while (0)
> >  
> > diff --git a/util/util.c b/util/util.c
> > index f59f26e1581c..e3b36f67f899 100644
> > --- a/util/util.c
> > +++ b/util/util.c
> > @@ -38,6 +38,11 @@ static void info_builtin(const char *info, va_list params)
> >  	report(" Info: ", info, params);
> >  }
> >  
> > +static void debug_builtin(const char *info, va_list params)
> 
> parameter here and in __pr_debug could be called 'debug' for consistency
> 
> > +{
> > +	report(" Debug: ", info, params);
> > +}
> > +
> >  void die(const char *err, ...)
> >  {
> >  	va_list params;
> > @@ -74,6 +79,16 @@ void pr_info(const char *info, ...)
> >  	va_end(params);
> >  }
> >  
> > +/* Do not call directly; call pr_debug() instead. */
> > +void __pr_debug(const char *info, ...)
> > +{
> > +	va_list params;
> > +
> > +	va_start(params, info);
> > +	debug_builtin(info, params);
> > +	va_end(params);
> > +}
> > +
> >  void die_perror(const char *s)
> >  {
> >  	perror(s);
> > -- 
> > 2.41.0
> >
diff mbox series

Patch

diff --git a/include/kvm/util.h b/include/kvm/util.h
index f51f370d2b37..6920ce2630ad 100644
--- a/include/kvm/util.h
+++ b/include/kvm/util.h
@@ -42,12 +42,13 @@  extern void die_perror(const char *s) NORETURN;
 extern void pr_err(const char *err, ...) __attribute__((format (printf, 1, 2)));
 extern void pr_warning(const char *err, ...) __attribute__((format (printf, 1, 2)));
 extern void pr_info(const char *err, ...) __attribute__((format (printf, 1, 2)));
+extern void __pr_debug(const char *err, ...) __attribute__((format (printf, 1, 2)));
 extern void set_die_routine(void (*routine)(const char *err, va_list params) NORETURN);
 
 #define pr_debug(fmt, ...)						\
 	do {								\
 		if (do_debug_print)					\
-			pr_info("(%s) %s:%d: " fmt, __FILE__,		\
+			__pr_debug("(%s) %s:%d: " fmt, __FILE__,	\
 				__func__, __LINE__, ##__VA_ARGS__);	\
 	} while (0)
 
diff --git a/util/util.c b/util/util.c
index f59f26e1581c..e3b36f67f899 100644
--- a/util/util.c
+++ b/util/util.c
@@ -38,6 +38,11 @@  static void info_builtin(const char *info, va_list params)
 	report(" Info: ", info, params);
 }
 
+static void debug_builtin(const char *info, va_list params)
+{
+	report(" Debug: ", info, params);
+}
+
 void die(const char *err, ...)
 {
 	va_list params;
@@ -74,6 +79,16 @@  void pr_info(const char *info, ...)
 	va_end(params);
 }
 
+/* Do not call directly; call pr_debug() instead. */
+void __pr_debug(const char *info, ...)
+{
+	va_list params;
+
+	va_start(params, info);
+	debug_builtin(info, params);
+	va_end(params);
+}
+
 void die_perror(const char *s)
 {
 	perror(s);