函数逻辑报告 |
Source Code:kernel\sched\psi.c |
Create Date:2022-07-27 10:46:50 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:Schedule polling if it's not already scheduled. It's safe to call even from* hotpath because even though kthread_queue_delayed_work takes worker->lock* spinlock that spinlock is never contended due to poll_scheduled atomic* preventing such competition.
函数原型:static void psi_schedule_poll_work(struct psi_group *group, unsigned long delay)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct psi_group * | group | |
| unsigned long | delay |
| 561 | 如果atomic_cmpxchg( & poll_scheduled, 0, 1)不等于0则返回 |
| 566 | kworker等于cu_dereference() - fetch RCU-protected pointer for dereferencing*@p: The pointer to read, prior to dereferencing* This is a simple wrapper around rcu_dereference_check().(poll_kworker) |
| 571 | 如果此条件成立可能性大(为编译器优化)(kworker)则kthread_queue_delayed_work - queue the associated kthread work* after a delay |
| 573 | 否则atomic_set( & poll_scheduled, 0) |
| 名称 | 描述 |
|---|---|
| psi_poll_work | |
| psi_task_change |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |