Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 05bf2c8a authored by Masami Hiramatsu's avatar Masami Hiramatsu Committed by Arnaldo Carvalho de Melo
Browse files

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: default avatarMasami 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: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent c3492a3a
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -546,7 +546,7 @@ probe_cache__find(struct probe_cache *pcache, struct perf_probe_event *pev)
	if (!cmd)
		return NULL;

	list_for_each_entry(entry, &pcache->entries, node) {
	for_each_probe_cache_entry(entry, pcache) {
		if (pev->sdt) {
			if (entry->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;

	list_for_each_entry(entry, &pcache->entries, node) {
	for_each_probe_cache_entry(entry, pcache) {
		/* Hit if same event name or same command-string */
		if (streql(entry->pev.group, group) &&
		    streql(entry->pev.event, event))
@@ -748,7 +748,7 @@ int probe_cache__commit(struct probe_cache *pcache)
	if (ret < 0)
		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);
		pr_debug("Cache committed: %d\n", ret);
		if (ret < 0)
@@ -790,7 +790,7 @@ static int probe_cache__show_entries(struct probe_cache *pcache,
{
	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))
			printf("%s\n", entry->spev);
	}
+2 −0
Original line number Diff line number Diff line
@@ -21,6 +21,8 @@ struct probe_cache {

#define PF_FL_UPROBE	1
#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_both(int *kfd, int *ufd, int flag);