Lines Matching full:rcu
115 /* rcu tasks trace callback for bpf_ma == false */
116 static void __bpf_local_storage_free_trace_rcu(struct rcu_head *rcu) in __bpf_local_storage_free_trace_rcu() argument
120 /* If RCU Tasks Trace grace period implies RCU grace period, do in __bpf_local_storage_free_trace_rcu()
123 local_storage = container_of(rcu, struct bpf_local_storage, rcu); in __bpf_local_storage_free_trace_rcu()
127 kfree_rcu(local_storage, rcu); in __bpf_local_storage_free_trace_rcu()
130 static void bpf_local_storage_free_rcu(struct rcu_head *rcu) in bpf_local_storage_free_rcu() argument
134 local_storage = container_of(rcu, struct bpf_local_storage, rcu); in bpf_local_storage_free_rcu()
138 static void bpf_local_storage_free_trace_rcu(struct rcu_head *rcu) in bpf_local_storage_free_trace_rcu() argument
141 bpf_local_storage_free_rcu(rcu); in bpf_local_storage_free_trace_rcu()
143 call_rcu(rcu, bpf_local_storage_free_rcu); in bpf_local_storage_free_trace_rcu()
151 kfree_rcu(local_storage, rcu); in __bpf_local_storage_free()
153 call_rcu_tasks_trace(&local_storage->rcu, in __bpf_local_storage_free()
170 call_rcu_tasks_trace(&local_storage->rcu, in bpf_local_storage_free()
182 call_rcu(&local_storage->rcu, bpf_local_storage_free_rcu); in bpf_local_storage_free()
185 /* rcu tasks trace callback for bpf_ma == false */
186 static void __bpf_selem_free_trace_rcu(struct rcu_head *rcu) in __bpf_selem_free_trace_rcu() argument
190 selem = container_of(rcu, struct bpf_local_storage_elem, rcu); in __bpf_selem_free_trace_rcu()
194 kfree_rcu(selem, rcu); in __bpf_selem_free_trace_rcu()
202 kfree_rcu(selem, rcu); in __bpf_selem_free()
204 call_rcu_tasks_trace(&selem->rcu, __bpf_selem_free_trace_rcu); in __bpf_selem_free()
207 static void bpf_selem_free_rcu(struct rcu_head *rcu) in bpf_selem_free_rcu() argument
212 selem = container_of(rcu, struct bpf_local_storage_elem, rcu); in bpf_selem_free_rcu()
222 static void bpf_selem_free_trace_rcu(struct rcu_head *rcu) in bpf_selem_free_trace_rcu() argument
225 bpf_selem_free_rcu(rcu); in bpf_selem_free_trace_rcu()
227 call_rcu(rcu, bpf_selem_free_rcu); in bpf_selem_free_trace_rcu()
261 call_rcu_tasks_trace(&selem->rcu, bpf_selem_free_trace_rcu); in bpf_selem_free()
323 * all the RCU grace periods have expired. in bpf_selem_unlink_storage_nolock()
790 * code path needs to go through a rcu grace period before calling
870 * RCU read section to finish before proceeding. New RCU in bpf_local_storage_map_free()
911 * Hence, wait another rcu grace period for the storage to be freed. in bpf_local_storage_map_free()