Workqueues and Kevents

queue_work_on — queue work on specific cpu
queue_delayed_work_on — queue work on specific CPU after delay
mod_delayed_work_on — modify delay of or queue a delayed work on specific CPU
flush_workqueue — ensure that any scheduled work has run to completion.
drain_workqueue — drain a workqueue
flush_work — wait for a work to finish executing the last queueing instance
cancel_work_sync — cancel a work and wait for it to finish
flush_delayed_work — wait for a dwork to finish executing the last queueing
cancel_delayed_work — cancel a delayed work
cancel_delayed_work_sync — cancel a delayed work and wait for it to finish
flush_scheduled_work — ensure that any scheduled work has run to completion.
execute_in_process_context — reliably execute the routine with user context
destroy_workqueue — safely terminate a workqueue
workqueue_set_max_active — adjust max_active of a workqueue
workqueue_congested — test whether a workqueue is congested
work_busy — test whether a work is currently pending or running
work_on_cpu — run a function in user context on a particular cpu