[PATCH 87/95] pin-ve-irq

Chris Wilson chris at chris-wilson.co.uk
Mon Jul 27 07:56:57 UTC 2020


---
 drivers/gpu/drm/i915/gt/intel_lrc.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/gt/intel_lrc.c b/drivers/gpu/drm/i915/gt/intel_lrc.c
index 22c80c96c356..c2ee93b5821e 100644
--- a/drivers/gpu/drm/i915/gt/intel_lrc.c
+++ b/drivers/gpu/drm/i915/gt/intel_lrc.c
@@ -5327,8 +5327,10 @@ static void virtual_context_enter(struct intel_context *ce)
 	struct virtual_engine *ve = container_of(ce, typeof(*ve), context);
 	unsigned int n;
 
-	for (n = 0; n < ve->num_siblings; n++)
+	for (n = 0; n < ve->num_siblings; n++) {
 		intel_engine_pm_get(ve->siblings[n]);
+		intel_breadcrumbs_pin_irq(ve->siblings[n]->breadcrumbs);
+	}
 
 	intel_timeline_enter(ce->timeline);
 }
@@ -5340,8 +5342,10 @@ static void virtual_context_exit(struct intel_context *ce)
 
 	intel_timeline_exit(ce->timeline);
 
-	for (n = 0; n < ve->num_siblings; n++)
+	for (n = 0; n < ve->num_siblings; n++) {
+		intel_breadcrumbs_unpin_irq(ve->siblings[n]->breadcrumbs);
 		intel_engine_pm_put(ve->siblings[n]);
+	}
 }
 
 static const struct intel_context_ops virtual_context_ops = {
-- 
2.20.1



More information about the Intel-gfx-trybot mailing list