Re: [PATCH] perf: fix wrong DEBUG configuration

From: Arnaldo Carvalho de Melo
Date: Wed May 20 2015 - 09:17:58 EST


Em Wed, May 20, 2015 at 03:07:39PM +0200, Martin LiÅka escreveu:
> On 05/19/2015 04:04 PM, Arnaldo Carvalho de Melo wrote:
> >Em Tue, May 19, 2015 at 03:41:03PM +0200, Martin LiÅka escreveu:
> >>Following patch is fix for wrong DEBUG configuration.
> >
> >Can you please state, in the changelog, what you think is wrong and how
> >your proposed change fixes it, so that after reading your intent I can
> >go and look at the code to see if it matches that?

Ok, that improved things, thanks! A question:

>
> Currently, GCC optimizes -O6 same as -O3 level. Right optimize debugging
> experience is given by passing -Og to compiler.

Is this is this -Og available in old gcc versions? When was it
introduced? Do you know?

- Arnaldo

> Assign default value for pointers that are identified by compiler as
> non-initialized.
>
> Signed-off-by: Martin Liska <mliska@xxxxxxx>

> >From b5f2b42b279ab497e92d41e1f4021dd5cb6ae3ce Mon Sep 17 00:00:00 2001
> From: mliska <mliska@xxxxxxx>
> Date: Thu, 2 Apr 2015 15:24:49 +0200
> Subject: [PATCH] perf: fix wrong DEBUG configuration
>
> Currently, GCC optimizes -O6 same as -O3 level. Right optimize debugging
> experience is given by passing -Og to compiler.
> Assign default value for pointers that are identified by compiler as
> non-initialized.
>
> Signed-off-by: Martin Liska <mliska@xxxxxxx>
> ---
> tools/perf/arch/common.c | 2 +-
> tools/perf/config/Makefile | 2 +-
> tools/perf/util/symbol.c | 2 +-
> tools/perf/util/trace-event-parse.c | 2 +-
> 4 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/tools/perf/arch/common.c b/tools/perf/arch/common.c
> index 49776f1..b7bb42c 100644
> --- a/tools/perf/arch/common.c
> +++ b/tools/perf/arch/common.c
> @@ -61,7 +61,7 @@ const char *const mips_triplets[] = {
> static bool lookup_path(char *name)
> {
> bool found = false;
> - char *path, *tmp;
> + char *path, *tmp = NULL;
> char buf[PATH_MAX];
> char *env = getenv("PATH");
>
> diff --git a/tools/perf/config/Makefile b/tools/perf/config/Makefile
> index e3b3724..ca8d3e3 100644
> --- a/tools/perf/config/Makefile
> +++ b/tools/perf/config/Makefile
> @@ -129,7 +129,7 @@ ifndef DEBUG
> endif
>
> ifeq ($(DEBUG),0)
> - CFLAGS += -O6
> + CFLAGS += -Og
> endif
>
> ifdef PARSER_DEBUG
> diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
> index 82a31fd..a19fbd4 100644
> --- a/tools/perf/util/symbol.c
> +++ b/tools/perf/util/symbol.c
> @@ -400,7 +400,7 @@ static struct symbol *symbols__find_by_name(struct rb_root *symbols,
> const char *name)
> {
> struct rb_node *n;
> - struct symbol_name_rb_node *s;
> + struct symbol_name_rb_node *s = NULL;
>
> if (symbols == NULL)
> return NULL;
> diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c
> index 25d6c73..d495741 100644
> --- a/tools/perf/util/trace-event-parse.c
> +++ b/tools/perf/util/trace-event-parse.c
> @@ -173,7 +173,7 @@ void parse_ftrace_printk(struct pevent *pevent,
> char *line;
> char *next = NULL;
> char *addr_str;
> - char *fmt;
> + char *fmt = NULL;
>
> line = strtok_r(file, "\n", &next);
> while (line) {
> --
> 2.1.4
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/