Commit 27242c62 authored by Tom Zanussi's avatar Tom Zanussi Committed by Steven Rostedt (VMware)

tracing: Use strncpy instead of memcpy when copying comm for hist triggers

Because there may be random garbage beyond a string's null terminator,
code that might use the entire comm array e.g. histogram keys, can
give unexpected results if that garbage is copied in too, so avoid
that possibility by using strncpy instead of memcpy.

Link: http://lkml.kernel.org/r/1eb9f096a8086c3c82c7fc087c900005143cec54.1551802084.git.tom.zanussi@linux.intel.comSigned-off-by: default avatarTom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: default avatarSteven Rostedt (VMware) <rostedt@goodmis.org>
parent 9f0bbf31
...@@ -2141,7 +2141,7 @@ static inline void save_comm(char *comm, struct task_struct *task) ...@@ -2141,7 +2141,7 @@ static inline void save_comm(char *comm, struct task_struct *task)
return; return;
} }
memcpy(comm, task->comm, TASK_COMM_LEN); strncpy(comm, task->comm, TASK_COMM_LEN);
} }
static void hist_elt_data_free(struct hist_elt_data *elt_data) static void hist_elt_data_free(struct hist_elt_data *elt_data)
...@@ -3557,7 +3557,7 @@ static bool cond_snapshot_update(struct trace_array *tr, void *cond_data) ...@@ -3557,7 +3557,7 @@ static bool cond_snapshot_update(struct trace_array *tr, void *cond_data)
elt_data = context->elt->private_data; elt_data = context->elt->private_data;
track_elt_data = track_data->elt.private_data; track_elt_data = track_data->elt.private_data;
if (elt_data->comm) if (elt_data->comm)
memcpy(track_elt_data->comm, elt_data->comm, TASK_COMM_LEN); strncpy(track_elt_data->comm, elt_data->comm, TASK_COMM_LEN);
track_data->updated = true; track_data->updated = true;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment