Lines Matching refs:pcache

450 static int probe_cache__open(struct probe_cache *pcache, const char *target,
505 pcache->fd = fd;
510 static int probe_cache__load(struct probe_cache *pcache)
517 fddup = dup(pcache->fd);
551 list_add_tail(&entry->node, &pcache->entries);
571 struct probe_cache *pcache = zalloc(sizeof(*pcache));
573 if (pcache) {
574 INIT_LIST_HEAD(&pcache->entries);
575 pcache->fd = -EINVAL;
577 return pcache;
580 void probe_cache__purge(struct probe_cache *pcache)
584 list_for_each_entry_safe(entry, n, &pcache->entries, node) {
590 void probe_cache__delete(struct probe_cache *pcache)
592 if (!pcache)
595 probe_cache__purge(pcache);
596 if (pcache->fd > 0)
597 close(pcache->fd);
598 free(pcache);
603 struct probe_cache *pcache = probe_cache__alloc();
606 if (!pcache)
609 ret = probe_cache__open(pcache, target, nsi);
615 ret = probe_cache__load(pcache);
621 return pcache;
624 probe_cache__delete(pcache);
640 probe_cache__find(struct probe_cache *pcache, struct perf_probe_event *pev)
648 for_each_probe_cache_entry(entry, pcache) {
673 probe_cache__find_by_name(struct probe_cache *pcache,
678 for_each_probe_cache_entry(entry, pcache) {
690 int probe_cache__add_entry(struct probe_cache *pcache,
698 if (!pcache || !pev || !tevs || ntevs <= 0) {
704 entry = probe_cache__find(pcache, pev);
730 list_add_tail(&entry->node, &pcache->entries);
907 int probe_cache__scan_sdt(struct probe_cache *pcache, const char *pathname)
927 entry = probe_cache__find_by_name(pcache, sdtgrp, note->name);
941 list_add_tail(&entry->node, &pcache->entries);
1008 int probe_cache__commit(struct probe_cache *pcache)
1014 ret = lseek(pcache->fd, 0, SEEK_SET);
1018 ret = ftruncate(pcache->fd, 0);
1022 for_each_probe_cache_entry(entry, pcache) {
1023 ret = probe_cache_entry__write(entry, pcache->fd);
1044 int probe_cache__filter_purge(struct probe_cache *pcache,
1049 list_for_each_entry_safe(entry, tmp, &pcache->entries, node) {
1059 static int probe_cache__show_entries(struct probe_cache *pcache,
1064 for_each_probe_cache_entry(entry, pcache) {
1074 struct probe_cache *pcache;
1088 pcache = probe_cache__new(nd->s, NULL);
1089 if (!pcache)
1091 if (!list_empty(&pcache->entries)) {
1095 probe_cache__show_entries(pcache, filter);
1097 probe_cache__delete(pcache);