lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 5 May 2015 20:14:02 -0700 From: tip-bot for Masami Hiramatsu <tipbot@...or.com> To: linux-tip-commits@...r.kernel.org Cc: mingo@...nel.org, tglx@...utronix.de, masami.hiramatsu.pt@...achi.com, linux-kernel@...r.kernel.org, namhyung@...nel.org, jolsa@...hat.com, acme@...hat.com, dsahern@...il.com, hpa@...or.com, peterz@...radead.org Subject: [tip:perf/core] perf probe: Accept multiple filter options Commit-ID: 96b55e39237b8bc92d8e6b96f896c106f2d39cf6 Gitweb: http://git.kernel.org/tip/96b55e39237b8bc92d8e6b96f896c106f2d39cf6 Author: Masami Hiramatsu <masami.hiramatsu.pt@...achi.com> AuthorDate: Fri, 24 Apr 2015 18:47:48 +0900 Committer: Arnaldo Carvalho de Melo <acme@...hat.com> CommitDate: Mon, 4 May 2015 12:43:55 -0300 perf probe: Accept multiple filter options Accept multiple filter options. Each filters are combined by logical-or. E.g. --filter abc* --filter *def is same as --filter abc*|*def Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@...achi.com> Cc: David Ahern <dsahern@...il.com> Cc: Jiri Olsa <jolsa@...hat.com> Cc: Namhyung Kim <namhyung@...nel.org> Cc: Peter Zijlstra <peterz@...radead.org> Link: http://lkml.kernel.org/r/20150424094748.23967.63355.stgit@localhost.localdomain Signed-off-by: Arnaldo Carvalho de Melo <acme@...hat.com> --- tools/perf/builtin-probe.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/tools/perf/builtin-probe.c b/tools/perf/builtin-probe.c index 92dcce0..be17075 100644 --- a/tools/perf/builtin-probe.c +++ b/tools/perf/builtin-probe.c @@ -262,21 +262,25 @@ static int opt_set_filter(const struct option *opt __maybe_unused, const char *str, int unset __maybe_unused) { const char *err; + int ret = 0; if (str) { pr_debug2("Set filter: %s\n", str); - if (params.filter) - strfilter__delete(params.filter); - params.filter = strfilter__new(str, &err); if (!params.filter) { + params.filter = strfilter__new(str, &err); + if (!params.filter) + ret = err ? -EINVAL : -ENOMEM; + } else + ret = strfilter__or(params.filter, str, &err); + + if (ret == -EINVAL) { pr_err("Filter parse error at %td.\n", err - str + 1); pr_err("Source: \"%s\"\n", str); pr_err(" %*c\n", (int)(err - str + 1), '^'); - return -EINVAL; } } - return 0; + return ret; } static int init_params(void) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists