summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2013-01-10 02:54:17 +0100
committerSteven Rostedt <rostedt@goodmis.org>2013-01-10 02:54:17 +0100
commita8dd2176a8e988e3744e863ac39647a6f59fa900 (patch)
tree2f848f44ae3a614d9b7d13e156e5bc7429c40113 /kernel
parentLinux 3.8-rc2 (diff)
downloadlinux-a8dd2176a8e988e3744e863ac39647a6f59fa900.tar.xz
linux-a8dd2176a8e988e3744e863ac39647a6f59fa900.zip
tracing: Fix regression of trace_options file setting
The latest change to allow trace options to be set on the command line also broke the trace_options file. The zeroing of the last byte of the option name that is echoed into the trace_option file was removed with the consolidation of some of the code. The compare between the option and what was written to the trace_options file fails because the string holding the data written doesn't terminate with a null character. A zero needs to be added to the end of the string copied from user space. Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/trace/trace.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index e5125677efa0..1bbfa0446507 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -2899,6 +2899,8 @@ tracing_trace_options_write(struct file *filp, const char __user *ubuf,
if (copy_from_user(&buf, ubuf, cnt))
return -EFAULT;
+ buf[cnt] = 0;
+
trace_set_options(buf);
*ppos += cnt;