函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:Spawn the kthreads that handle RCU's grace periods.

函数原型:static int __init rcu_spawn_gp_kthread(void)

返回类型:int

参数:

3316  kthread_prio_in等于cuc/rcub kthread realtime priority
3322  如果IS_ENABLED(CONFIG_FOO) evaluates to 1 if CONFIG_FOO is set to 'y' or 'm',* 0 otherwise.(CONFIG_RCU_BOOST)且cuc/rcub kthread realtime priority 小于2且IS_BUILTIN(CONFIG_FOO) evaluates to 1 if CONFIG_FOO is set to 'y', 0* otherwise. For boolean options, this is equivalent to* IS_ENABLED(CONFIG_FOO).(CONFIG_RCU_TORTURE_TEST)则cuc/rcub kthread realtime priority 等于2
3325  否则如果IS_ENABLED(CONFIG_FOO) evaluates to 1 if CONFIG_FOO is set to 'y' or 'm',* 0 otherwise.(CONFIG_RCU_BOOST)且cuc/rcub kthread realtime priority 小于1则cuc/rcub kthread realtime priority 等于1
3327  否则如果cuc/rcub kthread realtime priority 小于0则cuc/rcub kthread realtime priority 等于0
3329  否则如果cuc/rcub kthread realtime priority 大于99则cuc/rcub kthread realtime priority 等于99
3332  如果cuc/rcub kthread realtime priority 不等于kthread_prio_in打印警报信息("rcu_spawn_gp_kthread(): Limited prio to %d from %d\n", cuc/rcub kthread realtime priority , kthread_prio_in)
3336  The rcu_scheduler_fully_active variable transitions from zero to one* during the early_initcall() processing, which is after the scheduler* is capable of creating new tasks等于1
3337  t等于kthread_create - create a kthread on the current node*@threadfn: the function to run in the thread*@data: data pointer for @threadfn()*@namefmt: printf-style format string for the thread name*@arg(Body of kthread that handles grace periods., NULL, "%s", Name of structure. )
3338  如果WARN_ONCE(是错误, "%s: Could not start grace-period kthread, OOM is now expected behavior\n", __func__)则返回:0
3340  如果cuc/rcub kthread realtime priority
3341  sched_priority等于cuc/rcub kthread realtime priority
3342  改变调度策略和线程优先级
3344  rnp等于Return the root node of the rcu_state structure.
3345  raw_spin_lock_irqsave_rcu_node(rnp, flags)
3346  Task for grace periods. 等于t
3347  raw_spin_unlock_irqrestore_rcu_node(rnp, flags)
3348  唤醒中断线程
3349  rcu_spawn_nocb_kthreads()
3350  rcu_spawn_boost_kthreads()
3351  返回:0