Workqueues and Kevents

queue_work - queue work on a workqueue
queue_work_on - queue work on specific cpu
queue_delayed_work - queue work on a workqueue after delay
queue_delayed_work_on - queue work on specific CPU after delay
flush_workqueue - ensure that any scheduled work has run to completion.
flush_work - block until a work_struct's callback has terminated
cancel_work_sync - block until a work_struct's callback has terminated
cancel_delayed_work_sync - reliably kill off a delayed work.
schedule_work - put work task in global workqueue
schedule_delayed_work - put work task in global workqueue after delay
flush_delayed_work - block until a dwork_struct's callback has terminated
schedule_delayed_work_on - queue work in global workqueue on CPU after delay
execute_in_process_context - reliably execute the routine with user context
destroy_workqueue - safely terminate a workqueue
work_on_cpu - run a function in user context on a particular cpu