Lines Matching refs:pcache

415 static int probe_cache__open(struct probe_cache *pcache, const char *target,
470 pcache->fd = fd;
475 static int probe_cache__load(struct probe_cache *pcache)
482 fddup = dup(pcache->fd);
516 list_add_tail(&entry->node, &pcache->entries);
536 struct probe_cache *pcache = zalloc(sizeof(*pcache));
538 if (pcache) {
539 INIT_LIST_HEAD(&pcache->entries);
540 pcache->fd = -EINVAL;
542 return pcache;
545 void probe_cache__purge(struct probe_cache *pcache)
549 list_for_each_entry_safe(entry, n, &pcache->entries, node) {
555 void probe_cache__delete(struct probe_cache *pcache)
557 if (!pcache)
560 probe_cache__purge(pcache);
561 if (pcache->fd > 0)
562 close(pcache->fd);
563 free(pcache);
568 struct probe_cache *pcache = probe_cache__alloc();
571 if (!pcache)
574 ret = probe_cache__open(pcache, target, nsi);
580 ret = probe_cache__load(pcache);
586 return pcache;
589 probe_cache__delete(pcache);
605 probe_cache__find(struct probe_cache *pcache, struct perf_probe_event *pev)
613 for_each_probe_cache_entry(entry, pcache) {
638 probe_cache__find_by_name(struct probe_cache *pcache,
643 for_each_probe_cache_entry(entry, pcache) {
655 int probe_cache__add_entry(struct probe_cache *pcache,
663 if (!pcache || !pev || !tevs || ntevs <= 0) {
669 entry = probe_cache__find(pcache, pev);
695 list_add_tail(&entry->node, &pcache->entries);
838 int probe_cache__scan_sdt(struct probe_cache *pcache, const char *pathname)
858 entry = probe_cache__find_by_name(pcache, sdtgrp, note->name);
872 list_add_tail(&entry->node, &pcache->entries);
939 int probe_cache__commit(struct probe_cache *pcache)
945 ret = lseek(pcache->fd, 0, SEEK_SET);
949 ret = ftruncate(pcache->fd, 0);
953 for_each_probe_cache_entry(entry, pcache) {
954 ret = probe_cache_entry__write(entry, pcache->fd);
975 int probe_cache__filter_purge(struct probe_cache *pcache,
980 list_for_each_entry_safe(entry, tmp, &pcache->entries, node) {
990 static int probe_cache__show_entries(struct probe_cache *pcache,
995 for_each_probe_cache_entry(entry, pcache) {
1005 struct probe_cache *pcache;
1019 pcache = probe_cache__new(nd->s, NULL);
1020 if (!pcache)
1022 if (!list_empty(&pcache->entries)) {
1026 probe_cache__show_entries(pcache, filter);
1028 probe_cache__delete(pcache);