perf probe-cache: Add for_each_probe_cache_entry() wrapper

Add for_each_probe_cache_entry() wrapper macro for hiding list in
probe_cache.

Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Ananth N Mavinakayanahalli <ananth@linux.vnet.ibm.com>
Cc: Brendan Gregg <brendan.d.gregg@gmail.com>
Cc: Hemant Kumar <hemant@linux.vnet.ibm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Link: http://lkml.kernel.org/r/146831790386.17065.15082256697569419710.stgit@devbox
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
Masami Hiramatsu 2016-07-12 19:05:04 +09:00 committed by Arnaldo Carvalho de Melo
parent c3492a3a4e
commit 05bf2c8a2a
2 changed files with 6 additions and 4 deletions

View File

@ -546,7 +546,7 @@ probe_cache__find(struct probe_cache *pcache, struct perf_probe_event *pev)
if (!cmd) if (!cmd)
return NULL; return NULL;
list_for_each_entry(entry, &pcache->entries, node) { for_each_probe_cache_entry(entry, pcache) {
if (pev->sdt) { if (pev->sdt) {
if (entry->pev.event && if (entry->pev.event &&
streql(entry->pev.event, pev->event) && streql(entry->pev.event, pev->event) &&
@ -576,7 +576,7 @@ probe_cache__find_by_name(struct probe_cache *pcache,
{ {
struct probe_cache_entry *entry = NULL; struct probe_cache_entry *entry = NULL;
list_for_each_entry(entry, &pcache->entries, node) { for_each_probe_cache_entry(entry, pcache) {
/* Hit if same event name or same command-string */ /* Hit if same event name or same command-string */
if (streql(entry->pev.group, group) && if (streql(entry->pev.group, group) &&
streql(entry->pev.event, event)) streql(entry->pev.event, event))
@ -748,7 +748,7 @@ int probe_cache__commit(struct probe_cache *pcache)
if (ret < 0) if (ret < 0)
goto out; goto out;
list_for_each_entry(entry, &pcache->entries, node) { for_each_probe_cache_entry(entry, pcache) {
ret = probe_cache_entry__write(entry, pcache->fd); ret = probe_cache_entry__write(entry, pcache->fd);
pr_debug("Cache committed: %d\n", ret); pr_debug("Cache committed: %d\n", ret);
if (ret < 0) if (ret < 0)
@ -790,7 +790,7 @@ static int probe_cache__show_entries(struct probe_cache *pcache,
{ {
struct probe_cache_entry *entry; struct probe_cache_entry *entry;
list_for_each_entry(entry, &pcache->entries, node) { for_each_probe_cache_entry(entry, pcache) {
if (probe_cache_entry__compare(entry, filter)) if (probe_cache_entry__compare(entry, filter))
printf("%s\n", entry->spev); printf("%s\n", entry->spev);
} }

View File

@ -21,6 +21,8 @@ struct probe_cache {
#define PF_FL_UPROBE 1 #define PF_FL_UPROBE 1
#define PF_FL_RW 2 #define PF_FL_RW 2
#define for_each_probe_cache_entry(entry, pcache) \
list_for_each_entry(entry, &pcache->entries, node)
int probe_file__open(int flag); int probe_file__open(int flag);
int probe_file__open_both(int *kfd, int *ufd, int flag); int probe_file__open_both(int *kfd, int *ufd, int flag);