Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\workqueue.c Create Date:2022-07-28 09:27:47
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:destroy_workqueue - safely terminate a workqueue*@wq: target workqueue* Safely destroy a workqueue. All work currently pending will be done first.

Proto:void destroy_workqueue(struct workqueue_struct *wq)

Type:void

Parameter:

TypeParameterName
struct workqueue_struct *wq
4349  workqueue_sysfs_unregister(wq)
4352  drain_workqueue - drain a workqueue*@wq: workqueue to drain* Wait until the workqueue becomes empty. While draining is in progress,* only chain queueing is allowed. IOW, only currently pending or running
4355  If MD: rescue worker Then
4356  rescuer = MD: rescue worker
4359  spin_lock_irq( & wq_mayday_lock)
4360  MD: rescue worker = NULL
4361  spin_unlock_irq( & wq_mayday_lock)
4364  stop a thread
4365  free previously allocated memory
4372  mutex_lock( & wq_pool_mutex)
4373  mutex_lock( & protects this wq )
4374  r_each_pwq - iterate through all pool_workqueues of the specified workqueue*@pwq: iteration cursor*@wq: the target workqueue* This must be called either with wq->mutex held or RCU read locked(pwq, wq)
4375  spin_lock_irq( & he pool lock )
4376  If WARN_ON(pwq_busy(pwq)) Then
4377  pr_warn("%s: %s has the following busy pwq\n", __func__, I: workqueue name )
4379  show_pwq(pwq)
4384  Return
4386  spin_unlock_irq( & he pool lock )
4388  mutex_unlock( & protects this wq )
4389  mutex_unlock( & wq_pool_mutex)
4395  mutex_lock( & wq_pool_mutex)
4396  list_del_rcu - deletes entry from list without re-initialization*@entry: the element to delete from the list
4397  mutex_unlock( & wq_pool_mutex)
4399  If Not (hot fields used during command issue, aligned to cacheline & WQ_UNBOUND) Then
4400  wq_unregister_lockdep(wq)
4405  Exported common interfaces
4406  Else
4422  pwq = PW: only for unbound wqs
4423  PW: only for unbound wqs = NULL
4424  put_pwq_unlocked - put_pwq() with surrounding pool lock/unlock*@pwq: pool_workqueue to put (can be %NULL)* put_pwq() with locking. This function also allows %NULL @pwq.
Caller
NameDescribe
alloc_workqueue
test_ww_mutex_exit
__padata_free
padata_allocpadata_alloc - allocate and initialize a padata instance and specify* cpumasks for serial and parallel workers
z3fold_create_poolz3fold_create_pool() - create a new z3fold pool*@name: pool name*@gfp: gfp flags when allocating the z3fold pool structure*@ops: user-defined operations for the z3fold pool* Return: pointer to the new z3fold pool or NULL if the metadata allocation* failed.
z3fold_destroy_poolz3fold_destroy_pool() - destroys an existing z3fold pool*@pool: the z3fold pool to be destroyed* The pool should be emptied before this function is called.
sb_init_dio_done_wqCreate workqueue for deferred direct IO completions. We allocate the* workqueue when it's first needed. This avoids creating workqueue for* filesystems that don't need it and also allows us to create the workqueue
fscrypt_initscrypt_init() - Set up for fs encryption.
fsverity_exit_workqueue