From: Andi Kleen <a...@linux.intel.com> For perf script -F the - removal of fields didn't work for typed fields, only for untyped. Add the REMOVE case for this variant too.
v2: Use correct index Signed-off-by: Andi Kleen <a...@linux.intel.com> --- tools/perf/builtin-script.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tools/perf/builtin-script.c b/tools/perf/builtin-script.c index d7d454d10074..129b11404a9c 100644 --- a/tools/perf/builtin-script.c +++ b/tools/perf/builtin-script.c @@ -2502,6 +2502,10 @@ static int parse_output_fields(const struct option *opt __maybe_unused, rc = -EINVAL; goto out; } + if (change == REMOVE) + output[type].fields &= ~all_output_options[i].field; + else + output[type].fields |= all_output_options[i].field; output[type].user_set = true; output[type].wildcard_set = true; } -- 2.17.1