will be printed. Each entry has function name and file/line. Enabled by
        default, disable with --no-inline.
 
---insn-trace::
-       Show instruction stream for intel_pt traces. Combine with --xed to
-       show disassembly.
+--insn-trace[=<raw|disasm>]::
+       Show instruction stream in bytes (raw) or disassembled (disasm)
+       for intel_pt traces. The default is 'raw'. To use xed, combine
+       'raw' with --xed to show disassembly done by xed.
 
 --xed::
        Run xed disassembler on output. Requires installing the xed disassembler.
 
 #endif
 
 static int parse_insn_trace(const struct option *opt __maybe_unused,
-                           const char *str __maybe_unused,
-                           int unset __maybe_unused)
+                           const char *str, int unset __maybe_unused)
 {
-       parse_output_fields(NULL, "+insn,-event,-period", 0);
+       const char *fields = "+insn,-event,-period";
+       int ret;
+
+       if (str) {
+               if (strcmp(str, "disasm") == 0)
+                       fields = "+disasm,-event,-period";
+               else if (strlen(str) != 0 && strcmp(str, "raw") != 0) {
+                       fprintf(stderr, "Only accept raw|disasm\n");
+                       return -EINVAL;
+               }
+       }
+
+       ret = parse_output_fields(NULL, fields, 0);
+       if (ret < 0)
+               return ret;
+
        itrace_parse_synth_opts(opt, "i0ns", 0);
        symbol_conf.nanosecs = true;
        return 0;
                   "only consider these symbols"),
        OPT_INTEGER(0, "addr-range", &symbol_conf.addr_range,
                    "Use with -S to list traced records within address range"),
-       OPT_CALLBACK_OPTARG(0, "insn-trace", &itrace_synth_opts, NULL, NULL,
+       OPT_CALLBACK_OPTARG(0, "insn-trace", &itrace_synth_opts, NULL, "raw|disasm",
                        "Decode instructions from itrace", parse_insn_trace),
        OPT_CALLBACK_OPTARG(0, "xed", NULL, NULL, NULL,
                        "Run xed disassembler on output", parse_xed),