Replace strcpy() with strscpy() in __trace_find_cmdline() for consistency with the existing strscpy() call in the same function, and to avoid potential buffer overflow as flagged by the Kernel Self Protection Project.
Signed-off-by: Po-Sheng Lin <[email protected]> --- kernel/trace/trace_sched_switch.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kernel/trace/trace_sched_switch.c b/kernel/trace/trace_sched_switch.c index e9f0ff9626600..1bd351c1fbfb5 100644 --- a/kernel/trace/trace_sched_switch.c +++ b/kernel/trace/trace_sched_switch.c @@ -286,12 +286,12 @@ static void __trace_find_cmdline(int pid, char comm[]) int tpid; if (!pid) { - strcpy(comm, "<idle>"); + strscpy(comm, "<idle>", TASK_COMM_LEN); return; } if (WARN_ON_ONCE(pid < 0)) { - strcpy(comm, "<XXX>"); + strscpy(comm, "<XXX>", TASK_COMM_LEN); return; } @@ -304,7 +304,7 @@ static void __trace_find_cmdline(int pid, char comm[]) return; } } - strcpy(comm, "<...>"); + strscpy(comm, "<...>", TASK_COMM_LEN); } void trace_find_cmdline(int pid, char comm[]) -- 2.40.1
