Lines Matching full:relation
113 * yama_relation_cleanup - remove invalid entries from the relation list
118 struct ptrace_relation *relation; in yama_relation_cleanup() local
122 list_for_each_entry_rcu(relation, &ptracer_relations, node) { in yama_relation_cleanup()
123 if (relation->invalid) { in yama_relation_cleanup()
124 list_del_rcu(&relation->node); in yama_relation_cleanup()
125 kfree_rcu(relation, rcu); in yama_relation_cleanup()
145 struct ptrace_relation *relation, *added; in yama_ptracer_add() local
157 list_for_each_entry_rcu(relation, &ptracer_relations, node) { in yama_ptracer_add()
158 if (relation->invalid) in yama_ptracer_add()
160 if (relation->tracee == tracee) { in yama_ptracer_add()
161 list_replace_rcu(&relation->node, &added->node); in yama_ptracer_add()
162 kfree_rcu(relation, rcu); in yama_ptracer_add()
177 * @tracer: remove any relation where tracer task matches
178 * @tracee: remove any relation where tracee task matches
183 struct ptrace_relation *relation; in yama_ptracer_del() local
187 list_for_each_entry_rcu(relation, &ptracer_relations, node) { in yama_ptracer_del()
188 if (relation->invalid) in yama_ptracer_del()
190 if (relation->tracee == tracee || in yama_ptracer_del()
191 (tracer && relation->tracer == tracer)) { in yama_ptracer_del()
192 relation->invalid = true; in yama_ptracer_del()
310 struct ptrace_relation *relation; in ptracer_exception_found() local
329 list_for_each_entry_rcu(relation, &ptracer_relations, node) { in ptracer_exception_found()
330 if (relation->invalid) in ptracer_exception_found()
332 if (relation->tracee == tracee) { in ptracer_exception_found()
333 parent = relation->tracer; in ptracer_exception_found()