Function report |
Source Code:kernel\workqueue.c |
Create Date:2022-07-28 09:26:12 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:ry_to_grab_pending - steal work item from worklist and disable irq*@work: work item to steal*@is_dwork: @work is a delayed_work*@flags: place to store irq state* Try to grab PENDING bit of @work. This function can handle @work in any
Proto:static int try_to_grab_pending(struct work_struct *work, bool is_dwork, unsigned long *flags)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct work_struct * | work | |
| bool | is_dwork | |
| unsigned long * | flags |
| 1235 | local_irq_save( * flags) |
| 1238 | If is_dwork Then |
| 1239 | dwork = to_delayed_work(work) |
| 1246 | If Value is more likely to compile time(del_timer( & timer)) Then Return 1 |
| 1251 | If Not st_and_set_bit - Set a bit and return its old value*@nr: Bit to set*@addr: Address to count from* This is an atomic fully-ordered operation (implied full memory barrier). Then Return 0 |
| 1263 | spin_lock( & he pool lock ) |
| 1272 | pwq = get_work_pwq(work) |
| 1273 | If pwq && I: the associated pool == pool Then |
| 1274 | debug_work_deactivate(work) |
| 1283 | If The first word is the work queue pointer and the flags rolled into* one(work) & WORK_STRUCT_DELAYED Then pwq_activate_delayed_work(work) |
| 1292 | spin_unlock( & he pool lock ) |
| 1294 | Return 1 |
| 1296 | spin_unlock( & he pool lock ) |
| 1297 | fail : |
| 1299 | local_irq_restore( * flags) |
| 1300 | If work_is_canceling(work) Then Return -ENOENT |
| 1302 | cpu_relax() |
| 1303 | Return -EAGAIN |
| Name | Describe |
|---|---|
| mod_delayed_work_on | mod_delayed_work_on - modify delay of or queue a delayed work on specific CPU*@cpu: CPU number to execute work on*@wq: workqueue to use*@dwork: work to queue*@delay: number of jiffies to wait before queueing* If @dwork is idle, equivalent to |
| __cancel_work_timer | |
| __cancel_work |
| Source code conversion tool public plug-in interface | X |
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |