Lines Matching refs:relation
119 struct ptrace_relation *relation; in yama_relation_cleanup() local
123 list_for_each_entry_rcu(relation, &ptracer_relations, node) { in yama_relation_cleanup()
124 if (relation->invalid) { in yama_relation_cleanup()
125 list_del_rcu(&relation->node); in yama_relation_cleanup()
126 kfree_rcu(relation, rcu); in yama_relation_cleanup()
146 struct ptrace_relation *relation, *added; in yama_ptracer_add() local
158 list_for_each_entry_rcu(relation, &ptracer_relations, node) { in yama_ptracer_add()
159 if (relation->invalid) in yama_ptracer_add()
161 if (relation->tracee == tracee) { in yama_ptracer_add()
162 list_replace_rcu(&relation->node, &added->node); in yama_ptracer_add()
163 kfree_rcu(relation, rcu); in yama_ptracer_add()
184 struct ptrace_relation *relation; in yama_ptracer_del() local
188 list_for_each_entry_rcu(relation, &ptracer_relations, node) { in yama_ptracer_del()
189 if (relation->invalid) in yama_ptracer_del()
191 if (relation->tracee == tracee || in yama_ptracer_del()
192 (tracer && relation->tracer == tracer)) { in yama_ptracer_del()
193 relation->invalid = true; in yama_ptracer_del()
311 struct ptrace_relation *relation; in ptracer_exception_found() local
330 list_for_each_entry_rcu(relation, &ptracer_relations, node) { in ptracer_exception_found()
331 if (relation->invalid) in ptracer_exception_found()
333 if (relation->tracee == tracee) { in ptracer_exception_found()
334 parent = relation->tracer; in ptracer_exception_found()