diff options
Diffstat (limited to 'scripts/mod/modpost.c')
| -rw-r--r-- | scripts/mod/modpost.c | 7 | 
1 files changed, 5 insertions, 2 deletions
diff --git a/scripts/mod/modpost.c b/scripts/mod/modpost.c index 6b37039c9e92..2f5b91da5afa 100644 --- a/scripts/mod/modpost.c +++ b/scripts/mod/modpost.c @@ -1007,6 +1007,8 @@ static Elf_Sym *find_fromsym(struct elf_info *elf, Elf_Addr addr,  static Elf_Sym *find_tosym(struct elf_info *elf, Elf_Addr addr, Elf_Sym *sym)  { +	Elf_Sym *new_sym; +  	/* If the supplied symbol has a valid name, return it */  	if (is_valid_name(elf, sym))  		return sym; @@ -1015,8 +1017,9 @@ static Elf_Sym *find_tosym(struct elf_info *elf, Elf_Addr addr, Elf_Sym *sym)  	 * Strive to find a better symbol name, but the resulting name may not  	 * match the symbol referenced in the original code.  	 */ -	return symsearch_find_nearest(elf, addr, get_secindex(elf, sym), -				      true, 20); +	new_sym = symsearch_find_nearest(elf, addr, get_secindex(elf, sym), +					 true, 20); +	return new_sym ? new_sym : sym;  }  static bool is_executable_section(struct elf_info *elf, unsigned int secndx)  |