函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:sert_work - insert a work into a pool*@pwq: pwq @work belongs to*@work: work to insert*@head: insertion point*@extra_flags: extra WORK_STRUCT_* flags to set* Insert @work which belongs to @pwq after @head

函数原型:static void insert_work(struct pool_workqueue *pwq, struct work_struct *work, struct list_head *head, unsigned int extra_flags)

返回类型:void

参数:

类型参数名称
struct pool_workqueue *pwq
struct work_struct *work
struct list_head *head
unsigned intextra_flags
1322  pool等于I: the associated pool
1325  set_work_pwq(work, pwq, extra_flags)
1326  添加链表项
1327  get_pwq - get an extra reference on the specified pool_workqueue*@pwq: pool_workqueue to get* Obtain an extra reference on @pwq. The caller should guarantee that*@pwq has positive refcnt and be holding the matching pool->lock.
1334  smp_mb()
1336  如果Policy functions. These define the policies on how the global worker* pools are managed. Unless noted otherwise, these functions assume that* they're being called with pool->lock held.wake_up_worker - wake up an idle worker*@pool: worker pool to wake worker from* Wake up the first idle worker of @pool.* CONTEXT:* spin_lock_irq(pool->lock).
调用者
名称描述
__queue_work
insert_wq_barriersert_wq_barrier - insert a barrier work*@pwq: pwq to insert barrier into*@barr: wq_barrier to insert*@target: target work to attach @barr to*@worker: worker currently executing @target, NULL if @target is not executing*@barr is linked to @target such that