函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\rcu\tree.c Create Date:2022-07-27 11:27:15
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:synchronize_rcu - wait until a grace period has elapsed

函数原型:void synchronize_rcu(void)

返回类型:void

参数:

2760  RCU_LOCKDEP_WARN(lock_is_held( & rcu_bh_lock_map) || lock_is_held( & rcu_lock_map) || lock_is_held( & rcu_sched_lock_map), "Illegal synchronize_rcu() in RCU read-side critical section")
2764  如果During early boot, any blocking grace-period wait automatically* implies a grace period则返回
2766  如果Should normal grace-period primitives be expedited? Intended for* use within RCU. Note that this function takes the rcu_expedited* sysfs/boot variable and rcu_scheduler_active into account as well* as the rcu_expedite_gp() nestingsynchronize_rcu_expedited - Brute-force RCU grace period* Wait for an RCU grace period, but expedite it
2768  否则wait_rcu_gp(all_rcu() - Queue an RCU callback for invocation after a grace period)
调用者
名称描述
logic_pio_unregister_rangelogic_pio_unregister_range - unregister a logical PIO range for a host*@range: pointer to the IO range which has been already registered.* Unregister a previously-registered IO range node.
unregister_nmi_handler
atomic_notifier_chain_unregisteratomic_notifier_chain_unregister - Remove notifier from an atomic notifier chain*@nh: Pointer to head of the atomic notifier chain*@n: Entry to remove from notifier chain* Removes a notifier from an atomic notifier chain.
rcu_test_sync_primsTest each non-SRCU synchronous grace-period wait API. This is* useful just after a change in mode for these primitives, and* during early boot.
rcu_sync_enter_sync_enter() - Force readers onto slowpath*@rsp: Pointer to rcu_sync structure to use for synchronization* This function is used by updaters who need readers to make use of* a slowpath during the update
cond_synchronize_rcud_synchronize_rcu - Conditionally wait for an RCU grace period*@oldstate: return value from earlier call to get_state_synchronize_rcu()* If a full RCU grace period has elapsed since the earlier call to* get_state_synchronize_rcu(), just return
enable_swap_info
blk_mq_quiesce_queuelk_mq_quiesce_queue() - wait until all ongoing dispatches have finished*@q: request queue
key_garbage_collectorReaper for unused keys.
expand_fdtableExpand the file descriptor table.* This function will allocate a new fdtable and both fd array and fdset, of* the given size.* Return <0 error code on error; 1 on successful completion.