Home
last modified time | relevance | path

Searched refs:call_rcu (Results 1 – 25 of 206) sorted by relevance

123456789

/linux/Documentation/RCU/
H A DUP.rst6 A common misconception is that, on UP systems, the call_rcu() primitive
22 which deletes element B, and then invokes call_rcu() to free element B
25 Now, if call_rcu() were to directly invoke its arguments, then upon return
30 This same problem can occur if call_rcu() is invoked from a hardware
37 by having call_rcu() directly invoke its arguments only if it was called
43 deletes element B from the list, then passes it to call_rcu() for deferred
45 RCU usage, since call_rcu() must wait for a grace period to elapse.
46 Therefore, in this case, allowing call_rcu() to immediately invoke
48 underlying RCU, namely that call_rcu() defers invoking its arguments until
59 Suppose that call_rcu() is invoked while holding a lock, and that the
[all …]
H A Dchecklist.rst203 5. If any of call_rcu(), call_srcu(), call_rcu_tasks(), or
209 function does this for you in the case of call_rcu().
234 primitives such as call_rcu().
238 If the updater uses call_rcu() or synchronize_rcu(), then
277 disables BH when updaters use call_rcu() or synchronize_rcu().
279 8. Although synchronize_rcu() is slower than is call_rcu(),
283 synchronize_rcu() should be used in preference to call_rcu().
294 code using call_rcu() should explicitly limit update rate in
298 Ways of gaining this self-limiting property when using call_rcu(),
390 CPU that executed the corresponding call_rcu(), call_srcu(),
[all …]
H A Drcuref.rst73 call_rcu(&el->head, el_free); remove_element
77 call_rcu(&el->head, el_free);
111 ... call_rcu(&el->head, el_free);
H A DwhatisRCU.rst152 c. synchronize_rcu() / call_rcu()
158 express synchronize_rcu() in terms of the call_rcu() callback API.
235 The call_rcu() API is an asynchronous callback form of
243 However, the call_rcu() API should not be used lightly, as use
248 of denial-of-service attacks. Code using call_rcu() should limit
387 synchronize_rcu() & call_rcu()
391 rcu_read_unlock(), synchronize_rcu(), and call_rcu() invocations in
393 to their callers and (2) call_rcu() callbacks may be invoked. Efficient
402 synchronize_rcu() and call_rcu() primitives used are the same for all three
536 In such cases, one uses call_rcu() rather than synchronize_rcu().
[all …]
/linux/tools/testing/shared/linux/
H A Dradix-tree.h16 call_rcu(head, func); in trace_call_rcu()
23 #undef call_rcu
24 #define call_rcu(x, y) trace_call_rcu(x, y) macro
/linux/fs/dlm/
H A Dmemory.c110 call_rcu(&r->rcu, __free_rsb_rcu); in dlm_free_rsb()
136 call_rcu(&lkb->rcu, __free_lkb_rcu); in dlm_free_lkb()
/linux/security/keys/
H A Duser_defined.c119 call_rcu(&zap->rcu, user_free_payload_rcu); in user_update()
137 call_rcu(&upayload->rcu, user_free_payload_rcu); in user_revoke()
H A Drequest_key_auth.c140 call_rcu(&rka->rcu, request_key_auth_rcu_disposal); in request_key_auth_revoke()
153 call_rcu(&rka->rcu, request_key_auth_rcu_disposal); in request_key_auth_destroy()
/linux/include/linux/
H A Drcupdate.h41 void call_rcu(struct rcu_head *head, rcu_callback_t func);
115 call_rcu(head, func); in call_rcu_hurry()
174 # define call_rcu_tasks call_rcu
221 #define call_rcu_tasks call_rcu
/linux/kernel/rcu/
H A Dupdate.c420 (crcu_array[i] == call_rcu)) { in __wait_rcu_gp()
437 (crcu_array[i] == call_rcu)) in __wait_rcu_gp()
614 call_rcu(&head, test_callback); in early_boot_test_call_rcu()
/linux/net/openvswitch/
H A Dvport-netdev.c177 call_rcu(&vport->rcu, vport_netdev_free); in netdev_destroy()
196 call_rcu(&vport->rcu, vport_netdev_free); in ovs_netdev_tunnel_destroy()
/linux/net/mctp/
H A Dneigh.c81 call_rcu(&neigh->rcu, __mctp_neigh_free); in mctp_neigh_remove_dev()
101 call_rcu(&neigh->rcu, __mctp_neigh_free); in mctp_neigh_remove()
318 call_rcu(&neigh->rcu, __mctp_neigh_free);
/linux/kernel/trace/
H A Drethook.c68 call_rcu(&rh->rcu, rethook_free_rcu); in rethook_free()
150 call_rcu(&node->rcu, free_rethook_node_rcu); in rethook_recycle()
/linux/mm/
H A Dmmu_gather.c295 call_rcu(&batch->rcu, tlb_remove_table_rcu); in tlb_remove_table_free()
336 call_rcu(&ptdesc->pt_rcu_head, __tlb_remove_table_one_rcu); in __tlb_remove_table_one()
/linux/net/core/
H A Dsock_reuseport.c363 call_rcu(&old_reuse->rcu, reuseport_free_rcu); in reuseport_add_sock()
422 call_rcu(&old_reuse->rcu, reuseport_free_rcu); in reuseport_resurrect()
455 call_rcu(&reuse->rcu, reuseport_free_rcu); in reuseport_detach_sock()
H A Dgro_cells.c138 call_rcu(&defer->rcu, percpu_free_defer_callback); in gro_cells_destroy()
/linux/arch/powerpc/mm/
H A Dpgtable-frag.c128 call_rcu(&ptdesc->pt_rcu_head, pte_free_now); in pte_fragment_free()
/linux/arch/x86/mm/
H A Dkmmio.c520 call_rcu(&dr->rcu, rcu_free_kmmio_fault_pages); in remove_kmmio_fault_pages()
586 call_rcu(&drelease->rcu, remove_kmmio_fault_pages); in unregister_kmmio_probe()
/linux/Documentation/RCU/Design/Requirements/
H A DRequirements.rst130 | call_rcu() or kfree_rcu(), which will be discussed later. |
660 be avoided through use of the call_rcu() and kfree_rcu() API
1244 unacceptable. In these situations, the asynchronous call_rcu() can
1273 25 call_rcu(&p->rh, remove_gp_cb);
1279 lines 1-5. The function remove_gp_cb() is passed to call_rcu()
1283 call_rcu() function may be used in a number of situations where
1287 call_rcu() is illegal within NMI handlers and from idle and offline
1300 | call_rcu() on line 25 stores into the structure, which would |
1345 kfree_rcu() from the same environments as for call_rcu().
1346 Interestingly enough, DYNIX/ptx had the equivalents of call_rcu()
[all …]
/linux/tools/testing/radix-tree/
H A Dregression1.c76 call_rcu(&p->rcu, page_rcu_free); in page_free()
/linux/kernel/bpf/
H A Dbpf_local_storage.c147 call_rcu(rcu, bpf_local_storage_free_rcu); in __bpf_local_storage_free()
162 call_rcu(&local_storage->rcu, bpf_local_storage_free_rcu); in bpf_local_storage_free()
212 call_rcu(rcu, bpf_selem_free_rcu); in bpf_selem_free_rcu()
238 call_rcu(&selem->rcu, bpf_selem_free_rcu); in bpf_selem_free()
/linux/io_uring/
H A Deventfd.c39 call_rcu(&ev_fd->rcu, io_eventfd_free); in io_eventfd_put()
/linux/include/linux/sched/
H A Dtask.h159 call_rcu(&t->rcu, __put_task_struct_rcu_cb); in put_task_struct()
/linux/scripts/coccinelle/api/
H A Datomic_as_refcounter.cocci21 identifier fname6 =~ ".*call_rcu.*";
/linux/kernel/
H A Daudit_watch.c306 call_rcu(&oentry->rcu, audit_free_rule_rcu); in audit_update_watch()
338 call_rcu(&e->rcu, audit_free_rule_rcu); in audit_remove_parent_watches()

123456789