Commit dcbebb11 authored by Chris Wilson's avatar Chris Wilson

drm/i915/gt: Schedule next retirement worker first

As we may park the gt during request retirement, we may cancel the
retirement worker only to then program the delayed worker once more.

If we schedule the next delayed retirement worker first, if we then park
the gt, the work will remain cancelled.
Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191119162559.3313003-2-chris@chris-wilson.co.uk
parent 1683d24c
...@@ -110,9 +110,9 @@ static void retire_work_handler(struct work_struct *work) ...@@ -110,9 +110,9 @@ static void retire_work_handler(struct work_struct *work)
struct intel_gt *gt = struct intel_gt *gt =
container_of(work, typeof(*gt), requests.retire_work.work); container_of(work, typeof(*gt), requests.retire_work.work);
intel_gt_retire_requests(gt);
schedule_delayed_work(&gt->requests.retire_work, schedule_delayed_work(&gt->requests.retire_work,
round_jiffies_up_relative(HZ)); round_jiffies_up_relative(HZ));
intel_gt_retire_requests(gt);
} }
void intel_gt_init_requests(struct intel_gt *gt) void intel_gt_init_requests(struct intel_gt *gt)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment