mirror of https://gitee.com/openkylin/linux.git
perf tools: elf_sym__is_function() should accept "zero" sized functions
Asm routines that end up having size equal to zero are not really zero sized, and as now we do kernel_maps__fixup_sym_end, at least for kernel routines this gets fixed. A similar fixup needs to be done for the userspace bits as well, but as this fixup started only because in /proc/kallsyms we don't have the end address nor the function size, it appeared here first. Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Frédéric Weisbecker <fweisbec@gmail.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Mike Galbraith <efault@gmx.de> LKML-Reference: <1254796503-27203-1-git-send-email-acme@redhat.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
ee949a86b3
commit
818331303b
|
@ -324,8 +324,7 @@ static inline int elf_sym__is_function(const GElf_Sym *sym)
|
|||
{
|
||||
return elf_sym__type(sym) == STT_FUNC &&
|
||||
sym->st_name != 0 &&
|
||||
sym->st_shndx != SHN_UNDEF &&
|
||||
sym->st_size != 0;
|
||||
sym->st_shndx != SHN_UNDEF;
|
||||
}
|
||||
|
||||
static inline int elf_sym__is_label(const GElf_Sym *sym)
|
||||
|
|
Loading…
Reference in New Issue