Merge branch 'upstream' of git://git.infradead.org/users/pcmoore/audit
[firefly-linux-kernel-4.4.55.git] / tools / perf / builtin-data.c
index 155cf75b8199c67914974af1a62f388278053879..d6525bc54d13e337e927b197ab87da55f99492ae 100644 (file)
@@ -22,7 +22,9 @@ static const struct option data_options[] = {
        OPT_END()
 };
 
-static const char * const data_usage[] = {
+static const char * const data_subcommands[] = { "convert", NULL };
+
+static const char *data_usage[] = {
        "perf data [<common options>] <command> [<options>]",
        NULL
 };
@@ -51,12 +53,14 @@ static int cmd_data_convert(int argc, const char **argv,
                            const char *prefix __maybe_unused)
 {
        const char *to_ctf     = NULL;
+       bool force = false;
        const struct option options[] = {
                OPT_INCR('v', "verbose", &verbose, "be more verbose"),
                OPT_STRING('i', "input", &input_name, "file", "input file name"),
 #ifdef HAVE_LIBBABELTRACE_SUPPORT
                OPT_STRING(0, "to-ctf", &to_ctf, NULL, "Convert to CTF format"),
 #endif
+               OPT_BOOLEAN('f', "force", &force, "don't complain, do it"),
                OPT_END()
        };
 
@@ -74,7 +78,7 @@ static int cmd_data_convert(int argc, const char **argv,
 
        if (to_ctf) {
 #ifdef HAVE_LIBBABELTRACE_SUPPORT
-               return bt_convert__perf2ctf(input_name, to_ctf);
+               return bt_convert__perf2ctf(input_name, to_ctf, force);
 #else
                pr_err("The libbabeltrace support is not compiled in.\n");
                return -1;
@@ -98,7 +102,7 @@ int cmd_data(int argc, const char **argv, const char *prefix)
        if (argc < 2)
                goto usage;
 
-       argc = parse_options(argc, argv, data_options, data_usage,
+       argc = parse_options_subcommand(argc, argv, data_options, data_subcommands, data_usage,
                             PARSE_OPT_STOP_AT_NON_OPTION);
        if (argc < 1)
                goto usage;