Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

Name:kthread_queue_delayed_work - queue the associated kthread work* after a delay

Proto:bool kthread_queue_delayed_work(struct kthread_worker *worker, struct kthread_delayed_work *dwork, unsigned long delay)

Type:bool

Parameter:

TypeParameterName
struct kthread_worker *worker
struct kthread_delayed_work *dwork
unsigned longdelay
917  work = work
919  bool ret = false
921  raw_spin_lock_irqsave( & lock, flags)
923  If Not Returns true when the work could not be queued at the moment.* It happens when it is already pending in a worker list* or when it is being cancelled. Then
924  __kthread_queue_delayed_work(worker, dwork, delay)
925  ret = true
928  raw_spin_unlock_irqrestore( & lock, flags)
929  Return ret
Caller
NameDescribe
psi_schedule_poll_workSchedule 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.