bpf_program__set_autoload(skel->progs.test_array_map_3, true);
        bpf_program__set_autoload(skel->progs.test_array_map_4, true);
 
+       skel->bss->my_pid = getpid();
        skel->rodata->nr_cpus = libbpf_num_possible_cpus();
 
        err = percpu_alloc_array__load(skel);
 
        bpf_program__set_autoload(skel->progs.test_array_map_10, true);
 
+       skel->bss->my_pid = getpid();
        skel->rodata->nr_cpus = libbpf_num_possible_cpus();
 
        err = percpu_alloc_array__load(skel);
        if (!ASSERT_OK_PTR(skel, "percpu_alloc_cgrp_local_storage__open"))
                goto close_fd;
 
+       skel->bss->my_pid = getpid();
        skel->rodata->nr_cpus = libbpf_num_possible_cpus();
 
        err = percpu_alloc_cgrp_local_storage__load(skel);
 
 }
 
 int cpu0_field_d, sum_field_c;
+int my_pid;
 
 /* Summarize percpu data */
 SEC("?fentry/bpf_fentry_test3")
        struct val_t *v;
        struct elem *e;
 
+       if ((bpf_get_current_pid_tgid() >> 32) != my_pid)
+               return 0;
+
        e = bpf_map_lookup_elem(&array, &index);
        if (!e)
                return 0;
        struct val_t *v;
        struct elem *e;
 
+       if ((bpf_get_current_pid_tgid() >> 32) != my_pid)
+               return 0;
+
        e = bpf_map_lookup_elem(&array, &index);
        if (!e)
                return 0;
 
 }
 
 int cpu0_field_d, sum_field_c;
+int my_pid;
 
 /* Summarize percpu data collection */
 SEC("fentry/bpf_fentry_test3")
        struct elem *e;
        int i;
 
+       if ((bpf_get_current_pid_tgid() >> 32) != my_pid)
+               return 0;
+
        task = bpf_get_current_task_btf();
        e = bpf_cgrp_storage_get(&cgrp, task->cgroups->dfl_cgrp, 0, 0);
        if (!e)