From: Tom Zanussi <tom.zanu...@linux.intel.com>

Rather than enumerating each permutation, build the enable state
string up from the combination of states.  This also allows for the
simpler addition of more states.

Link: 
http://lkml.kernel.org/r/9aff5af6dee2f5a40ca30df41c39d5f33e998d7a.1372479499.git.tom.zanu...@linux.intel.com

Signed-off-by: Tom Zanussi <tom.zanu...@linux.intel.com>
Signed-off-by: Steven Rostedt <rost...@goodmis.org>
---
 kernel/trace/trace_events.c |   20 ++++++++++----------
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/kernel/trace/trace_events.c b/kernel/trace/trace_events.c
index 903a0bf..7ee08b9 100644
--- a/kernel/trace/trace_events.c
+++ b/kernel/trace/trace_events.c
@@ -638,17 +638,17 @@ event_enable_read(struct file *filp, char __user *ubuf, 
size_t cnt,
                  loff_t *ppos)
 {
        struct ftrace_event_file *file = filp->private_data;
-       char *buf;
+       char buf[4] = "0";
 
-       if (file->flags & FTRACE_EVENT_FL_ENABLED) {
-               if (file->flags & FTRACE_EVENT_FL_SOFT_DISABLED)
-                       buf = "0*\n";
-               else if (file->flags & FTRACE_EVENT_FL_SOFT_MODE)
-                       buf = "1*\n";
-               else
-                       buf = "1\n";
-       } else
-               buf = "0\n";
+       if (file->flags & FTRACE_EVENT_FL_ENABLED &&
+           !(file->flags & FTRACE_EVENT_FL_SOFT_DISABLED))
+               strcpy(buf, "1");
+
+       if (file->flags & FTRACE_EVENT_FL_SOFT_DISABLED ||
+           file->flags & FTRACE_EVENT_FL_SOFT_MODE)
+               strcat(buf, "*");
+
+       strcat(buf, "\n");
 
        return simple_read_from_buffer(ubuf, cnt, ppos, buf, strlen(buf));
 }
-- 
1.7.10.4


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to