[igt-dev] [PATCH i-g-t] tests/kms_concurrent: Fix regression in test_resolution_with_output

Srinivas, Vidya vidya.srinivas at intel.com
Mon Sep 20 16:59:22 UTC 2021



> -----Original Message-----
> From: Mark Yacoub <markyacoub at chromium.org>
> Sent: Monday, September 20, 2021 8:57 PM
> To: Srinivas, Vidya <vidya.srinivas at intel.com>
> Cc: Rodrigo Siqueira <Rodrigo.Siqueira at amd.com>; Development mailing list
> for IGT GPU Tools <igt-dev at lists.freedesktop.org>; Modem, Bhanuprakash
> <bhanuprakash.modem at intel.com>; Mark Yacoub
> <markyacoub at google.com>; Nicholas Choi <nicholas.choi at amd.com>
> Subject: Re: [igt-dev] [PATCH i-g-t] tests/kms_concurrent: Fix regression in
> test_resolution_with_output
> 
> On Mon, Sep 20, 2021 at 4:30 AM Srinivas, Vidya <vidya.srinivas at intel.com>
> wrote:
> >
> >
> >
> > > -----Original Message-----
> > > From: Rodrigo Siqueira <Rodrigo.Siqueira at amd.com>
> > > Sent: Friday, September 17, 2021 8:34 PM
> > > To: Mark Yacoub <markyacoub at chromium.org>
> > > Cc: Development mailing list for IGT GPU Tools <igt-
> > > dev at lists.freedesktop.org>; Modem, Bhanuprakash
> > > <bhanuprakash.modem at intel.com>; Mark Yacoub
> <markyacoub at google.com>;
> > > Srinivas, Vidya <vidya.srinivas at intel.com>; Nicholas Choi
> > > <nicholas.choi at amd.com>
> > > Subject: Re: [igt-dev] [PATCH i-g-t] tests/kms_concurrent: Fix
> > > regression in test_resolution_with_output
> > >
> > > Hi Mark,
> > >
> > > Yes, this patch cause a regression in AMD.
> > >
> > > I applied the original patch after the CI reported a complete pass.
> > > I also tested it in a VC4 and VKMS; just for curiosity, why did we
> > > not get this regression in the CI?
> >
> > Hello Mark/Siqueira,
> > I am not very sure. One possible reason could be the CI does not run
> > all the subtests sequentially? With this line, it triggers the
> > condition [ 7577.454215] [drm:drm_atomic_check_only] atomic driver
> > check for 00000000bcb190f7 failed: -22
> Do we know why is this the case? I'm curious to know which check is failing
> and why it is failing. Is it failing at the following atomic commit? Cause it
> could be a kernel bug maybe?

Hello Mark,

The condition which it fails for is DRM_DEBUG_ATOMIC("[CRTC:%d:%s] enabled/connectors mismatch\n")
Under new_crtc_state->enable != has_connectors
This loop is meant for CRTC changed its mode but has same set of connectors. But here,
Mismatch is getting triggered saying there is a mismatch between the CRTC that is being enabled and the number of connectors.
Function drm_atomic_helper_check_modeset

Regards
Vidya

> > I observed the same message even with upstream kernel.
> >
> > I have resubmitted the patch with is amd
> > https://patchwork.freedesktop.org/patch/454571/?series=94762&rev=2
> > Kindly have a check. Thank you.
> >
> > Regards
> > Vidya
> > >
> > > Thanks
> > >
> > > On 09/16, Mark Yacoub wrote:
> > > > @Siquiera, I remember this also caused a regression on Qualcomm
> > > > devices as well.
> > > > Will removing this regress AMD? Any work around?
> > > >
> > > > On Thu, Sep 16, 2021 at 10:30 AM Vidya Srinivas
> > > > <vidya.srinivas at intel.com> wrote:
> > > > >
> > > > > Staring commit fea0e38e690c30c6 "Making the test more generic"
> > > > > test_resolution_with_output introduced setting
> > > > > igt_output_set_pipe to PIPE_NONE. This is triggering atomic
> > > > > check failure resulting in "enabled/connectors mismatch" under
> > > drm_atomic_helper_check_modeset.
> > > > > Patch fixes this issue.
> > > > >
> > > > > Signed-off-by: Vidya Srinivas <vidya.srinivas at intel.com>
> > > > > ---
> > > > >  tests/kms_concurrent.c | 1 -
> > > > >  1 file changed, 1 deletion(-)
> > > > >
> > > > > diff --git a/tests/kms_concurrent.c b/tests/kms_concurrent.c
> > > > > index
> > > > > 25c67eb469d1..40096ea1c457 100644
> > > > > --- a/tests/kms_concurrent.c
> > > > > +++ b/tests/kms_concurrent.c
> > > > > @@ -268,7 +268,6 @@ test_resolution_with_output(data_t *data,
> > > > > enum pipe pipe, int max_planes, igt_ou
> > > > >
> > > > >                 /* switch to lower resolution */
> > > > >                 igt_output_override_mode(output, mode_lo);
> > > > > -               igt_output_set_pipe(output, PIPE_NONE);
> > > > >                 igt_display_commit2(&data->display,
> > > > > COMMIT_ATOMIC);
> > > > >
> > > > >                 /* switch back to higher resolution */
> > > > > --
> > > > > 2.33.0
> > > > >
> > >
> > > --
> > > Rodrigo Siqueira
> > > https://siqueira.tech


More information about the igt-dev mailing list