[PATCH I-G-T v4] tests/intel/i915_hangman: Fix spin engine hang
Krzysztof Karas
krzysztof.karas at intel.com
Tue Dec 17 11:23:46 UTC 2024
Hi Mikolaj,
> > > for_each_ctx_engine(device, ctx, other) {
> > > + /* Wa_14014494547:DG2 */
> > > + if (IS_DG2(intel_get_drm_devid(device)) && is_rcs_ccs(other))
>
> The test fails when both rcs and css engines run in parallel.
> What I overlooked in first patch version, was case when both of
> them are running as background spins (initiated exactly in loop above).
> So now the test passes not only when one of the engines is tested one,
> but also when the other ones are tested.
>
> > In previous version of this patch there were also checks to confirm
> > that:
> > 1) the current engine is one of the two types,
>
> Current engine doesn't matter now because even if we run test on rcs or
> ccs, we will know for sure that the other one won't run in background.
So the idea here is just to disable running rcs/ccs in background for
all engines?
> The tested engine is run later in the test and not in this loop.
Does that mean rcs/ccs will always be tested separately?
> > 2) the engines are different.
>
> Cc: Andi
>
> This I'd like Andi to comment on. What this check did, was that it
> allowed for tested engine to have both frozen spin and normal
> background spin. Do you think that this background spin should
> still be run or is it negligible?
In that case testing e == other makes sense. Thanks for explaining.
Krzysztof
>
> Mikołaj
>
> >
> > > + continue;
> > > +
> > > local_ctx[num_ctx] = intel_ctx_create(device, &ctx->cfg);
> > > context_unban(device, local_ctx[num_ctx]->id);
> > > ahndN = get_reloc_ahnd(device, local_ctx[num_ctx]->id);
> > > --
> > > 2.47.1
> > >
More information about the igt-dev
mailing list