Messages in this thread | | | Date | Wed, 30 Sep 2015 13:13:20 -0400 | From | Tejun Heo <> | Subject | Re: [PATCH] workqueue: make sure delayed work run in local cpu |
| |
On Wed, Sep 30, 2015 at 09:05:30AM -0700, Shaohua Li wrote: > My system keeps crash with below message. vmstat_update() schedules a delayed > work in current cpu and expects the work runs in the cpu. > schedule_delayed_work() is expected to make delayed work run in local cpu. The > problem is timer can be migrated with NO_HZ. __queue_work() queues work in > timer handler, which could run in a different cpu other than where the delayed > work is scheduled. The end result is the delayed work runs in different cpu. > The patch makes __queue_delayed_work records local cpu earlier. Where the timer > runs doesn't change where the work runs with the change. > ... > Signed-off-by: Shaohua Li <shli@fb.com>
This has been broken since 09. No idea why it wasn't triggering before. Maybe the timer wasn't actually being migrated?
Applied to wq/for-4.3-fixes w/ stable tag added.
Thanks.
-- tejun
| |