mirror of https://gitee.com/openkylin/linux.git
perf auxtrace: Fix no_size logic in addr_filter__resolve_kernel_syms()
Address filtering with kernel symbols incorrectly resulted in the error "Cannot determine size of symbol" because the no_size logic was the wrong way around. Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> Tested-by: Andi Kleen <ak@linux.intel.com> Cc: stable@vger.kernel.org # v4.9+ Link: http://lkml.kernel.org/r/1490357752-27942-1-git-send-email-adrian.hunter@intel.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
ef65e96e07
commit
c3a0bbc7ad
|
@ -1826,7 +1826,7 @@ static int addr_filter__resolve_kernel_syms(struct addr_filter *filt)
|
||||||
filt->addr = start;
|
filt->addr = start;
|
||||||
if (filt->range && !filt->size && !filt->sym_to) {
|
if (filt->range && !filt->size && !filt->sym_to) {
|
||||||
filt->size = size;
|
filt->size = size;
|
||||||
no_size = !!size;
|
no_size = !size;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1840,7 +1840,7 @@ static int addr_filter__resolve_kernel_syms(struct addr_filter *filt)
|
||||||
if (err)
|
if (err)
|
||||||
return err;
|
return err;
|
||||||
filt->size = start + size - filt->addr;
|
filt->size = start + size - filt->addr;
|
||||||
no_size = !!size;
|
no_size = !size;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The very last symbol in kallsyms does not imply a particular size */
|
/* The very last symbol in kallsyms does not imply a particular size */
|
||||||
|
|
Loading…
Reference in New Issue