Function report |
Source Code:kernel\workqueue.c |
Create Date:2022-07-28 09:26:41 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:process_one_work - process single work*@worker: self*@work: work to process* Process @work
Proto:static void process_one_work(struct worker *worker, struct work_struct *work)__releases(&pool->lock) __acquires(&pool->lock)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct worker * | worker | |
| struct work_struct * | work |
| 2161 | pwq = get_work_pwq(work) |
| 2162 | pool = A: the associated pool |
| 2163 | cpu_intensive = flags & WQ_CPU_INTENSIVE |
| 2179 | WARN_ON_ONCE(!(X: flags & POOL_DISASSOCIATED) && These macros fold the SMP functionality into a single CPU system() != I: the associated cpu ) |
| 2195 | debug_work_deactivate(work) |
| 2197 | L: work being processed = work |
| 2198 | L: current_work's fn = func |
| 2199 | L: current_work's pwq = pwq |
| 2200 | work_color = get_work_color(work) |
| 2237 | spin_unlock_irq( & he pool lock ) |
| 2239 | lock_map_acquire( & lockdep_map) |
| 2240 | lock_map_acquire( & lockdep_map) |
| 2262 | lockdep_invariant_state(true) |
| 2264 | L: current_work's fn (work) |
| 2270 | lock_map_release( & lockdep_map) |
| 2271 | lock_map_release( & lockdep_map) |
| 2274 | pr_err("BUG: workqueue leaked lock or atomic: %s/0x%08x/%d\n last function: %ps\n", comm, We mask the PREEMPT_NEED_RESCHED bit so as not to confuse all current users* that think a non-zero value indicates we cannot preempt., task_pid_nr(current process), L: current_work's fn ) |
| 2279 | dump_stack() |
| 2290 | cond_resched() |
| 2292 | spin_lock_irq( & he pool lock ) |
| 2303 | L: work being processed = NULL |
| 2304 | L: current_work's fn = NULL |
| 2305 | L: current_work's pwq = NULL |
| Name | Describe |
|---|---|
| process_scheduled_works | process_scheduled_works - process scheduled works*@worker: self* Process all scheduled works |
| worker_thread |
| 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 |