[PATCH 6/7] workqueue: reimplement cancel_delayed_work() using try_to_grab_pending()

2012-08-08 Thread Tejun Heo
cancel_delayed_work() can't be called from IRQ handlers due to its use of del_timer_sync() and can't cancel work items which are already transferred from timer to worklist. Also, unlike other flush and cancel functions, a canceled delayed_work would still point to the last associated

[PATCH 6/7] workqueue: reimplement cancel_delayed_work() using try_to_grab_pending()

2012-08-08 Thread Tejun Heo
cancel_delayed_work() can't be called from IRQ handlers due to its use of del_timer_sync() and can't cancel work items which are already transferred from timer to worklist. Also, unlike other flush and cancel functions, a canceled delayed_work would still point to the last associated