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

Alexandru Elisei
2023-07-07T13:35:44Z

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
> >