Re: [PATCH 2/2] [v2] kallsyms: rework symbol lookup return codes

From: Arnd Bergmann
Date: Wed Jul 26 2023 - 09:56:36 EST


On Wed, Jul 26, 2023, at 10:02, Jiri Olsa wrote:
> On Mon, Jul 24, 2023 at 03:53:02PM +0200, Arnd Bergmann wrote:

>> diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
>> index 05c0024815bf9..bc0eed24a5873 100644
>> --- a/kernel/trace/ftrace.c
>> +++ b/kernel/trace/ftrace.c
>> @@ -6965,7 +6965,7 @@ allocate_ftrace_mod_map(struct module *mod,
>> return mod_map;
>> }
>>
>> -static const char *
>> +static int
>> ftrace_func_address_lookup(struct ftrace_mod_map *mod_map,
>> unsigned long addr, unsigned long *size,
>> unsigned long *off, char *sym)
>> @@ -6986,21 +6986,18 @@ ftrace_func_address_lookup(struct ftrace_mod_map *mod_map,
>> *size = found_func->size;
>> if (off)
>> *off = addr - found_func->ip;
>> - if (sym)
>> - strscpy(sym, found_func->name, KSYM_NAME_LEN);
>> -
>> - return found_func->name;
>> + return strlcpy(sym, found_func->name, KSYM_NAME_LEN);
>
> hi,
> any reason not to call the original strscpy in here?

No, that was a mistake. I replaced the other strcpy and strncpy
with strlcpy in order to get the desired behavior, but in fact
they should all be strscpy, and changing this one was an accident.

I'll send a v3.

Arnd