, , ( ). , /workqueue.c. Documentation/workqueue.txt, Concurrency Managed Workqueue (cmwq), !
[ ] , delayed_work ?
( )
, ?
- delayed_work , , , ( , ), . , delayed_work work_struct work->func.
, -, struct delayed_work struct work_struct, a struct work_struct . -, concurrency. A work_struct "", data WORK_STRUCT_PENDING. , set_work_pool_and_clear_pending() - , API work_struct ( , ). cancel_delayed_work() .
, cancel_delayed_work(), , false ( ), -, . , schedule_delayed_work(), , pool_workqueue, - pool_workqueue . ( work->func), pool_workqueue , ! . ( work->func , work_struct.)
, , schedule_delayed_work() , - , .
EDIT: , Documentation/workqueue.txt WQ_NON_REENTRANT, . , .