函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:RCU torture reader kthread. Repeatedly dereferences rcu_torture_current,* incrementing the corresponding element of the pipeline array. The* counter in the element should never be greater than 1, otherwise, the* RCU implementation is broken.

函数原型:static int rcu_torture_reader(void *arg)

返回类型:int

参数:

类型参数名称
void *arg
1357  lastsleep等于jiffies
1358  myid等于arg
1359  mynumonline等于myid
1363  VERBOSE_TOROUT_STRING("rcu_torture_reader task started")
1364  set_user_nice(当前进程, MAX_NICE)
1365  如果irqreaderirq_capabletimer_setup_on_stack( & t, RCU torture reader from timer handler. Dereferences rcu_torture_current,* incrementing the corresponding element of the pipeline array. The* counter in the element should never be greater than 1, otherwise, the* RCU implementation is broken., 0)
1367  tick_dep_set_task(当前进程, TICK_DEP_BIT_RCU)
1368  循环
1369  如果irqreaderirq_capable
1373  如果非Do one read-side critical section, returning false if there was* no data to read. Can be invoked both from process context and* from a timer handler.且非Is it time for the current torture test to stop?schedule_timeout_interruptible(HZ)
1377  lastsleep等于jiffies加10
1379 num_online_cpus()小于mynumonline且非Is it time for the current torture test to stop?循环
1380  schedule_timeout_interruptible(HZ / 5)
1381  Task stuttering, which forces load/no-load transitions.
1382  当非Is it time for the current torture test to stop?循环
1383  如果irqreaderirq_capable
1384  del_timer_sync( & t)
1385  destroy_timer_on_stack( & t)
1387  tick_dep_clear_task(当前进程, TICK_DEP_BIT_RCU)
1388  Each kthread must wait for kthread_should_stop() before returning from* its top-level function, otherwise segfaults ensue
1389  返回:0