Em Sun, Nov 21, 2010 at 08:03:50AM -0700, David Ahern escreveu:
> continue statement in default case applies when a second pass is
> wanted as well. As it stands the code drops down to the open
> re-using the value in name from the previous origin attempt.
> 
> Signed-off-by: David Ahern <[email protected]>
> ---
>  tools/perf/util/symbol.c |    4 ++--
>  1 files changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
> index d30136e..861be8b 100644
> --- a/tools/perf/util/symbol.c
> +++ b/tools/perf/util/symbol.c
> @@ -1488,8 +1488,8 @@ int dso__load(struct dso *self, struct map *map, 
> symbol_filter_t filter)
>                       if (want_symtab) {
>                               want_symtab = 0;
>                               self->origin = DSO__ORIG_BUILD_ID_CACHE;
> -                     } else
> -                             continue;
> +                     }
> +                     continue;
>               }

But we want to restart at DSO__ORIG_BUILD_ID_CACHE, right? If you do
your change we keep a existing mistake and will instead restart at
DSO__ORIG_BUILD_ID_CACHE + 1, please take a look to validate my
understanding that we need to set self->origin to
DSO__ORIG_BUILD_ID_CACHE - 1.

- Arnaldo
--
To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to