/linux/tools/memory-model/ |
H A D | linux-kernel.cat | 54 let gp = po ; [Sync-rcu | Sync-srcu] ; po? 59 let barrier = fencerel(Barrier | Rmb | Wmb | Mb | Sync-rcu | Sync-srcu | 119 * In the definition of rcu-fence below, the po term at the left-hand side 121 * out. They have been moved into the definitions of rcu-link and rb. 124 let rcu-gp = [Sync-rcu] (* Compare with gp *) 126 let rcu-rscsi = rcu-rscs^-1 134 let rcu-link = po? ; hb* ; pb* ; prop ; po 138 * critical sections (joined by rcu-link) induces order like a generalized 144 let rec rcu-order = rcu-gp | srcu-gp | 145 (rcu-gp ; rcu-link ; rcu-rscsi) | [all …]
|
H A D | linux-kernel.bell | 28 'rcu-lock (*rcu_read_lock*) || 29 'rcu-unlock (*rcu_read_unlock*) || 30 'sync-rcu (*synchronize_rcu*) || 45 let rcu-rscs = let rec 57 flag ~empty Rcu-lock \ domain(rcu-rscs) as unmatched-rcu-lock 58 flag ~empty Rcu-unlock \ range(rcu-rscs) as unmatched-rcu-unlock 70 flag ~empty rcu-rscs & (po ; [Sync-srcu] ; po) as invalid-sleep
|
/linux/io_uring/ |
H A D | eventfd.c | 21 struct rcu_head rcu; member 28 static void io_eventfd_free(struct rcu_head *rcu) in io_eventfd_free() argument 30 struct io_ev_fd *ev_fd = container_of(rcu, struct io_ev_fd, rcu); in io_eventfd_free() 36 static void io_eventfd_do_signal(struct rcu_head *rcu) in io_eventfd_do_signal() argument 38 struct io_ev_fd *ev_fd = container_of(rcu, struct io_ev_fd, rcu); in io_eventfd_do_signal() 43 io_eventfd_free(rcu); in io_eventfd_do_signal() 49 call_rcu(&ev_fd->rcu, io_eventfd_free); in io_eventfd_put() 69 call_rcu_hurry(&ev_fd->rcu, io_eventfd_do_signal); in __io_eventfd_signal()
|
H A D | napi.c | 18 struct rcu_head rcu; member 52 scoped_guard(rcu) { in __io_napi_add_id() 101 kfree_rcu(e, rcu); in __io_napi_del_id() 120 kfree_rcu(e, rcu); in __io_napi_remove_stale() 220 scoped_guard(rcu) { in io_napi_blocking_busy_loop() 261 kfree_rcu(e, rcu); in io_napi_free() 388 scoped_guard(rcu) { in io_napi_sqpoll_busy_poll()
|
/linux/fs/dlm/ |
H A D | memory.c | 100 static void __free_rsb_rcu(struct rcu_head *rcu) in __free_rsb_rcu() argument 102 struct dlm_rsb *r = container_of(rcu, struct dlm_rsb, rcu); in __free_rsb_rcu() 110 call_rcu(&r->rcu, __free_rsb_rcu); in dlm_free_rsb() 118 static void __free_lkb_rcu(struct rcu_head *rcu) in __free_lkb_rcu() argument 120 struct dlm_lkb *lkb = container_of(rcu, struct dlm_lkb, rcu); in __free_lkb_rcu() 136 call_rcu(&lkb->rcu, __free_lkb_rcu); in dlm_free_lkb()
|
/linux/net/batman-adv/ |
H A D | types.h | 205 struct rcu_head rcu; member 277 struct rcu_head rcu; member 347 struct rcu_head rcu; member 500 struct rcu_head rcu; member 575 struct rcu_head rcu; member 634 struct rcu_head rcu; member 669 struct rcu_head rcu; member 738 struct rcu_head rcu; member 1555 struct rcu_head rcu; member 1583 struct rcu_head rcu; member [all …]
|
/linux/include/net/ |
H A D | if_inet6.h | 80 struct rcu_head rcu; member 87 struct rcu_head rcu; member 99 struct rcu_head rcu; member 109 struct rcu_head rcu; member 133 struct rcu_head rcu; member 153 struct rcu_head rcu; member 219 struct rcu_head rcu; member
|
/linux/include/linux/ |
H A D | watch_queue.h | 30 struct rcu_head rcu; member 39 struct rcu_head rcu; member 56 struct rcu_head rcu; member 73 struct rcu_head rcu; member 115 kfree_rcu(wlist, rcu); in remove_watch_list()
|
H A D | rcupdate.h | 527 #define unrcu_pointer(p) __unrcu_pointer(p, __UNIQUE_ID(rcu)) 555 #define rcu_dereference_raw(p) __rcu_dereference_raw(p, __UNIQUE_ID(rcu)) 650 #define rcu_access_pointer(p) __rcu_access_pointer((p), __UNIQUE_ID(rcu), __rcu) 686 __rcu_dereference_check((p), __UNIQUE_ID(rcu), \ 702 __rcu_dereference_check((p), __UNIQUE_ID(rcu), \ 718 __rcu_dereference_check((p), __UNIQUE_ID(rcu), \ 730 __rcu_dereference_check((p), __UNIQUE_ID(rcu), 1, __rcu) 749 __rcu_dereference_protected((p), __UNIQUE_ID(rcu), (c), __rcu) 1161 DEFINE_LOCK_GUARD_0(rcu,
|
H A D | context_tracking.h | 157 static __always_inline void warn_rcu_exit(bool rcu) in warn_rcu_exit() argument 159 if (rcu) in warn_rcu_exit() 169 static __always_inline void warn_rcu_exit(bool rcu) { } in warn_rcu_exit() argument
|
/linux/lib/ |
H A D | percpu-refcount.c | 150 static void percpu_ref_call_confirm_rcu(struct rcu_head *rcu) in percpu_ref_call_confirm_rcu() argument 152 struct percpu_ref_data *data = container_of(rcu, in percpu_ref_call_confirm_rcu() 153 struct percpu_ref_data, rcu); in percpu_ref_call_confirm_rcu() 167 static void percpu_ref_switch_to_atomic_rcu(struct rcu_head *rcu) in percpu_ref_switch_to_atomic_rcu() argument 169 struct percpu_ref_data *data = container_of(rcu, in percpu_ref_switch_to_atomic_rcu() 170 struct percpu_ref_data, rcu); in percpu_ref_switch_to_atomic_rcu() 206 percpu_ref_call_confirm_rcu(rcu); in percpu_ref_switch_to_atomic_rcu() 233 call_rcu_hurry(&ref->data->rcu, in __percpu_ref_switch_to_atomic()
|
H A D | test_objpool.c | 38 struct completion rcu; member 131 struct rcu_head rcu; member 141 init_completion(&data->rcu); in ot_init_data() 424 static void ot_fini_async_rcu(struct rcu_head *rcu) in ot_fini_async_rcu() argument 426 struct ot_context *sop = container_of(rcu, struct ot_context, rcu); in ot_fini_async_rcu() 433 complete(&test->data.rcu); in ot_fini_async_rcu() 439 call_rcu(&sop->rcu, ot_fini_async_rcu); in ot_fini_async() 601 wait_for_completion(&test->data.rcu); in ot_start_async()
|
/linux/net/openvswitch/ |
H A D | flow_table.c | 128 static void rcu_free_flow_callback(struct rcu_head *rcu) in rcu_free_flow_callback() argument 130 struct sw_flow *flow = container_of(rcu, struct sw_flow, rcu); in rcu_free_flow_callback() 141 call_rcu(&flow->rcu, rcu_free_flow_callback); in ovs_flow_free() 183 static void mask_array_rcu_cb(struct rcu_head *rcu) in mask_array_rcu_cb() argument 185 struct mask_array *ma = container_of(rcu, struct mask_array, rcu); in mask_array_rcu_cb() 262 call_rcu(&old->rcu, mask_array_rcu_cb); in tbl_mask_array_realloc() 319 kfree_rcu(mask, rcu); in tbl_mask_array_del_mask() 352 static void mask_cache_rcu_cb(struct rcu_head *rcu) in mask_cache_rcu_cb() argument 354 struct mask_cache *mc = container_of(rcu, struct mask_cache, rcu); in mask_cache_rcu_cb() 406 call_rcu(&mc->rcu, mask_cache_rcu_cb); in ovs_flow_tbl_masks_cache_resize() [all …]
|
H A D | vport-netdev.c | 143 static void vport_netdev_free(struct rcu_head *rcu) in vport_netdev_free() argument 145 struct vport *vport = container_of(rcu, struct vport, rcu); in vport_netdev_free() 168 call_rcu(&vport->rcu, vport_netdev_free); in netdev_destroy() 187 call_rcu(&vport->rcu, vport_netdev_free); in ovs_netdev_tunnel_destroy()
|
H A D | flow_table.h | 31 struct rcu_head rcu; member 47 struct rcu_head rcu; member 57 struct rcu_head rcu; member
|
/linux/tools/testing/radix-tree/ |
H A D | regression1.c | 50 struct rcu_head rcu; member 66 static void page_rcu_free(struct rcu_head *rcu) in page_rcu_free() argument 68 struct page *p = container_of(rcu, struct page, rcu); in page_rcu_free() 76 call_rcu(&p->rcu, page_rcu_free); in page_free()
|
/linux/drivers/net/wireguard/ |
H A D | allowedips.c | 51 static void node_free_rcu(struct rcu_head *rcu) in node_free_rcu() argument 53 kmem_cache_free(node_cache, container_of(rcu, struct allowedips_node, rcu)); in node_free_rcu() 56 static void root_free_rcu(struct rcu_head *rcu) in root_free_rcu() argument 59 container_of(rcu, struct allowedips_node, rcu) }; in root_free_rcu() 270 call_rcu(&node->rcu, root_free_rcu); in wg_allowedips_free() 277 call_rcu(&node->rcu, root_free_rcu); in wg_allowedips_free() 333 call_rcu(&node->rcu, node_free_rcu); in wg_allowedips_remove_by_peer() 339 call_rcu(&parent->rcu, node_free_rcu); in wg_allowedips_remove_by_peer()
|
H A D | ratelimiter.c | 31 struct rcu_head rcu; member 41 static void entry_free(struct rcu_head *rcu) in entry_free() argument 44 container_of(rcu, struct ratelimiter_entry, rcu)); in entry_free() 51 call_rcu(&entry->rcu, entry_free); in entry_uninit()
|
/linux/fs/fuse/ |
H A D | acl.c | 15 struct inode *inode, int type, bool rcu) in __fuse_get_acl() argument 22 if (rcu) in __fuse_get_acl() 79 struct posix_acl *fuse_get_inode_acl(struct inode *inode, int type, bool rcu) in fuse_get_inode_acl() argument 92 return __fuse_get_acl(fc, inode, type, rcu); in fuse_get_inode_acl()
|
/linux/net/mac802154/ |
H A D | llsec.h | 32 struct rcu_head rcu; member 44 struct rcu_head rcu; member 50 struct rcu_head rcu; member
|
/linux/security/keys/ |
H A D | request_key_auth.c | 121 static void request_key_auth_rcu_disposal(struct rcu_head *rcu) in request_key_auth_rcu_disposal() argument 124 container_of(rcu, struct request_key_auth, rcu); in request_key_auth_rcu_disposal() 140 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/Documentation/translations/zh_CN/core-api/ |
H A D | kernel-api.rst | 360 kernel/rcu/tree.c 362 kernel/rcu/tree_exp.h 364 kernel/rcu/update.c 368 kernel/rcu/srcutree.c 378 kernel/rcu/sync.c
|
/linux/drivers/gpu/drm/xe/ |
H A D | xe_hw_fence.c | 43 static void fence_free(struct rcu_head *rcu) in fence_free() argument 46 container_of(rcu, struct xe_hw_fence, dma.rcu); in fence_free() 191 call_rcu(&dma_fence->rcu, fence_free); in xe_hw_fence_release() 237 fence_free(&fence->rcu); in xe_hw_fence_free()
|
/linux/kernel/bpf/ |
H A D | local_storage.c | 177 kfree_rcu(new, rcu); in cgroup_storage_update_elem() 540 static void free_shared_cgroup_storage_rcu(struct rcu_head *rcu) in free_shared_cgroup_storage_rcu() argument 543 container_of(rcu, struct bpf_cgroup_storage, rcu); in free_shared_cgroup_storage_rcu() 549 static void free_percpu_cgroup_storage_rcu(struct rcu_head *rcu) in free_percpu_cgroup_storage_rcu() argument 552 container_of(rcu, struct bpf_cgroup_storage, rcu); in free_percpu_cgroup_storage_rcu() 569 call_rcu(&storage->rcu, free_shared_cgroup_storage_rcu); in bpf_cgroup_storage_free() 571 call_rcu(&storage->rcu, free_percpu_cgroup_storage_rcu); in bpf_cgroup_storage_free()
|
/linux/drivers/gpu/drm/scheduler/ |
H A D | sched_fence.c | 96 static void drm_sched_fence_free_rcu(struct rcu_head *rcu) in drm_sched_fence_free_rcu() argument 98 struct dma_fence *f = container_of(rcu, struct dma_fence, rcu); in drm_sched_fence_free_rcu() 133 call_rcu(&fence->finished.rcu, drm_sched_fence_free_rcu); in drm_sched_fence_release_scheduled()
|