Make ftrace required when asked for

Silent failures suck, and since the default is off, make --enable_ftrace
explode if it can't be enabled.

Change-Id: I2393dd6567605bf26e1d7a8c1cdb0fe5208fc10c
Signed-off-by: Austin Schuh <austin.linux@gmail.com>
diff --git a/aos/ftrace.cc b/aos/ftrace.cc
index 0afbcf5..9806661 100644
--- a/aos/ftrace.cc
+++ b/aos/ftrace.cc
@@ -9,13 +9,17 @@
 
 namespace aos {
 
+int MaybeCheckOpen(const char *file) {
+  if (!FLAGS_enable_ftrace) return -1;
+  int result = open(file, O_WRONLY);
+  PCHECK(result >= 0) << ": Failed to open " << file;
+  return result;
+}
+
 Ftrace::Ftrace()
-    : message_fd_(FLAGS_enable_ftrace
-                      ? open("/sys/kernel/debug/tracing/trace_marker", O_WRONLY)
-                      : -1),
-      on_fd_(FLAGS_enable_ftrace
-                 ? open("/sys/kernel/debug/tracing/tracing_on", O_WRONLY)
-                 : -1) {}
+    : message_fd_(MaybeCheckOpen("/sys/kernel/debug/tracing/trace_marker")),
+      on_fd_(MaybeCheckOpen("/sys/kernel/debug/tracing/tracing_on")) {
+}
 
 Ftrace::~Ftrace() {
   if (message_fd_ != -1) {