[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH v2 1/4] xen: indicate gcov in log messages
On Tue, Sep 06, 2016 at 07:34:26AM -0600, Jan Beulich wrote: > >>> On 06.09.16 at 14:47, <andrew.cooper3@xxxxxxxxxx> wrote: > > On 06/09/16 13:41, Wei Liu wrote: > >> --- a/xen/drivers/char/console.c > >> +++ b/xen/drivers/char/console.c > >> @@ -735,10 +735,11 @@ void __init console_init_preirq(void) > >> spin_lock(&console_lock); > >> __putstr(xen_banner()); > >> spin_unlock(&console_lock); > >> - printk("Xen version %d.%d%s (%s@%s) (%s) debug=%c %s\n", > >> + printk("Xen version %d.%d%s (%s@%s) (%s) debug=%c gcov=%c %s\n", > > > > Please instead use > > > > printk("Xen version %d.%d%s (%s@%s) (%s) debug=%c" > > #ifdef CONFIG_GCOV > > " gcov=y" > > #endif > > " %s\n", > > > > Enabling gcov will be extremely rare in the grand scheme of things, and > > this method causes zero overhead for the case where gcov is compiled > > out. (Similarly elsewhere.) > > How about instead of the kind of ugly #ifdef-ery above, instead of > > +#ifdef CONFIG_GCOV > +#define gcov_build() 1 > +#else > +#define gcov_build() 0 > +#endif > > we'd have > > +#ifdef CONFIG_GCOV > +#define gcov_string "gcov=y" > +#else > +#define gcov_string "" > +#endif > > (with the identifier name open for improvement), which can then be > embedded easily into any string literal? > Now this patch looks like ---8<--- From 56718288f632d3a25bd3fe89777df99008a13d6e Mon Sep 17 00:00:00 2001 From: Wei Liu <wei.liu2@xxxxxxxxxx> Date: Fri, 2 Sep 2016 14:43:25 +0100 Subject: [PATCH] xen: indicate gcov in log messages Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> --- v3: simplify code Cc: Stefano Stabellini <sstabellini@xxxxxxxxxx> Cc: Julien Grall <julien.grall@xxxxxxx> Cc: Jan Beulich <jbeulich@xxxxxxxx> Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx> --- xen/arch/arm/traps.c | 2 +- xen/arch/x86/x86_64/traps.c | 2 +- xen/drivers/char/console.c | 2 +- xen/include/xen/lib.h | 6 ++++++ 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c index 9353ee7..39a05fd 100644 --- a/xen/arch/arm/traps.c +++ b/xen/arch/arm/traps.c @@ -141,7 +141,7 @@ static void print_xen_info(void) { char taint_str[TAINT_STRING_MAX_LEN]; - printk("----[ Xen-%d.%d%s %s debug=%c %s ]----\n", + printk("----[ Xen-%d.%d%s %s debug=%c " gcov_string " %s ]----\n", xen_major_version(), xen_minor_version(), xen_extra_version(), #ifdef CONFIG_ARM_32 "arm32", diff --git a/xen/arch/x86/x86_64/traps.c b/xen/arch/x86/x86_64/traps.c index 16de0be..fc8cde6 100644 --- a/xen/arch/x86/x86_64/traps.c +++ b/xen/arch/x86/x86_64/traps.c @@ -31,7 +31,7 @@ static void print_xen_info(void) { char taint_str[TAINT_STRING_MAX_LEN]; - printk("----[ Xen-%d.%d%s x86_64 debug=%c %s ]----\n", + printk("----[ Xen-%d.%d%s x86_64 debug=%c " gcov_string " %s ]----\n", xen_major_version(), xen_minor_version(), xen_extra_version(), debug_build() ? 'y' : 'n', print_tainted(taint_str)); } diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c index 650035d..55ae31a 100644 --- a/xen/drivers/char/console.c +++ b/xen/drivers/char/console.c @@ -735,7 +735,7 @@ void __init console_init_preirq(void) spin_lock(&console_lock); __putstr(xen_banner()); spin_unlock(&console_lock); - printk("Xen version %d.%d%s (%s@%s) (%s) debug=%c %s\n", + printk("Xen version %d.%d%s (%s@%s) (%s) debug=%c " gcov_string " %s\n", xen_major_version(), xen_minor_version(), xen_extra_version(), xen_compile_by(), xen_compile_domain(), xen_compiler(), debug_build() ? 'y' : 'n', xen_compile_date()); diff --git a/xen/include/xen/lib.h b/xen/include/xen/lib.h index e518adc..d1171b7 100644 --- a/xen/include/xen/lib.h +++ b/xen/include/xen/lib.h @@ -26,6 +26,12 @@ #define BUILD_BUG_ON(cond) ((void)BUILD_BUG_ON_ZERO(cond)) #endif +#ifdef CONFIG_GCOV +#define gcov_string "gcov=y" +#else +#define gcov_string "" +#endif + #ifndef NDEBUG #define ASSERT(p) \ do { if ( unlikely(!(p)) ) assert_failed(#p); } while (0) -- 2.1.4 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |