Lines Matching refs:pi
29 struct path_info *pi = s->path_map[cpu];
31 if (!pi)
34 if (refcount_dec_and_test(&pi->refcount)) {
36 free_cpumask_var(pi->cpumask);
37 kfree(pi);
47 struct path_info *pi = NULL;
56 pi = kzalloc(sizeof(*pi), GFP_KERNEL);
57 if (!pi) {
62 pi->path = path;
63 path->pscontext = pi;
64 refcount_set(&pi->refcount, 1);
66 if (!zalloc_cpumask_var(&pi->cpumask, GFP_KERNEL)) {
72 ret = cpumask_parse(argv[0], pi->cpumask);
79 for_each_cpu(cpu, pi->cpumask) {
92 s->path_map[cpu] = pi;
93 refcount_inc(&pi->refcount);
96 if (refcount_dec_and_test(&pi->refcount)) {
105 free_cpumask_var(pi->cpumask);
107 kfree(pi);
157 struct path_info *pi;
170 pi = path->pscontext;
171 DMEMIT("%*pb ", cpumask_pr_args(pi->cpumask));
183 struct path_info *pi = p->pscontext;
185 pi->failed = true;
190 struct path_info *pi = p->pscontext;
192 pi->failed = false;
202 struct path_info *pi;
207 pi = s->path_map[cpu];
208 if (pi && !pi->failed)
215 if (!pi)
221 pi = s->path_map[i];
222 if (pi && !pi->failed)
227 pi = s->path_map[i];
228 if (pi && !pi->failed)
231 pi = NULL;
235 return pi ? pi->path : NULL;