Patches 1 & 2 address bugs in stealing of guc_ids and patch 7 tests this path. Patches 4-6 address some issues with the CTs exposed by the selftest in patch 7. Basically if a lot of contexts were all deregistered all at once, the CT channel could deadlock. Patch 3 is a small fix that is already review but just included for CI. v2: Address comments, resend for CI v3: Address comments in patch #7 Signed-off-by: Matthew Brost <matthew.brost@xxxxxxxxx> John Harrison (1): drm/i915/guc: Don't hog IRQs when destroying contexts Matthew Brost (6): drm/i915/guc: Use correct context lock when callig clr_context_registered drm/i915/guc: Only assign guc_id.id when stealing guc_id drm/i915/guc: Remove racey GEM_BUG_ON drm/i915/guc: Add extra debug on CT deadlock drm/i915/guc: Kick G2H tasklet if no credits drm/i915/guc: Selftest for stealing of guc ids drivers/gpu/drm/i915/gt/uc/intel_guc.h | 12 ++ drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 18 +- .../gpu/drm/i915/gt/uc/intel_guc_submission.c | 69 ++++--- drivers/gpu/drm/i915/gt/uc/selftest_guc.c | 173 ++++++++++++++++++ 4 files changed, 244 insertions(+), 28 deletions(-) -- 2.33.1